我正在尝试从源代码(amalgamation)编译sqlite以从C#中使用它。自己编译它而不是使用预编译版本的原因是我需要JSON支持,默认情况下不包含它。这就是我编译它的方式:
cl sqlite3.c -DSQLITE_ENABLE_JSON1 -link -dll -out:sqlite3.dll
然后我尝试用我自己编译的版本替换我的应用程序中的预编译版本的sqlite3.dll,并且我的C#应用程序开始因为EntryPointNotFoundException而崩溃。
如何解决这个问题,以及编译SQLite的正确方法是什么?
答案 0 :(得分:0)
解决方案是导出API函数:
cl sqlite3.c -DSQLITE_API=__declspec(dllexport) -link -dll -out:sqlite3.dll