1.當然是下載SQLite的原始碼啦,呵呵,不過記得要是allinone的amalgamation版本哦(修正:amalgamation並非allinone,只是corecodeallinone,原始碼裡的其他檔案也是不能少的!)2.解壓縮,得到3個檔案sqlite3.csqlite3.hsqlite3ext.h然後把sqlite3.c編譯成obj以便在Delphi中使用要注意的是不要用VC編譯,要用Borland的C++編譯器,比如Delphi自帶的bcc這主要是因為VC編譯的obj是COFF格式的,而Borland用的obj是OMF格式bcc編譯的命令列:bcc32-pc-RT--O-w--6-I(bcc32)\include-csqlite3.c3.光有sqlite3.obj還不夠哦,呵呵,因為sqlite3.c有連結其他的庫這裡提供所有要用到的obj檔案下載4.現在所有的obj檔案都準備好了,不過別高興的太早了,現在只完成了一小部分而已...要在Delphi中使用這些obj中的函式,必須要先宣告一下先新建個Unit,比如sqlite3.pas,然後指定連結的obj檔案,如{$L"OBJ\sqlite3_5_4.obj"}{$L"OBJ\streams.obj"}//duplicato{$L"OBJ\_ftoul.obj"}{$L"OBJ\files.obj"}注意順序哦,呵呵然後新增函式宣告比如要用到sqlite3_open方法,在sqlite的原始碼裡宣告是這樣的SQLITE_APIintsqlite3_open(constchar*filename,/*Databasefilename(UTF-8)*/sqlite3**ppDb/*OUT:SQLitedbhandle*/);在Delphi中相應的宣告為:function_sqlite3_open(dbname:PChar;vardb:Pointer):Integer;cdecl;external;注意呼叫方式為cdecl,函式名要以_開頭,否則會找不到只是sqlite3函式好多哦,呵呵,所以我才說只完成了部分工作嘛...5.OK,完成了函式宣告才算是全部完成現在可以正式使用了~
1.當然是下載SQLite的原始碼啦,呵呵,不過記得要是allinone的amalgamation版本哦(修正:amalgamation並非allinone,只是corecodeallinone,原始碼裡的其他檔案也是不能少的!)2.解壓縮,得到3個檔案sqlite3.csqlite3.hsqlite3ext.h然後把sqlite3.c編譯成obj以便在Delphi中使用要注意的是不要用VC編譯,要用Borland的C++編譯器,比如Delphi自帶的bcc這主要是因為VC編譯的obj是COFF格式的,而Borland用的obj是OMF格式bcc編譯的命令列:bcc32-pc-RT--O-w--6-I(bcc32)\include-csqlite3.c3.光有sqlite3.obj還不夠哦,呵呵,因為sqlite3.c有連結其他的庫這裡提供所有要用到的obj檔案下載4.現在所有的obj檔案都準備好了,不過別高興的太早了,現在只完成了一小部分而已...要在Delphi中使用這些obj中的函式,必須要先宣告一下先新建個Unit,比如sqlite3.pas,然後指定連結的obj檔案,如{$L"OBJ\sqlite3_5_4.obj"}{$L"OBJ\streams.obj"}//duplicato{$L"OBJ\_ftoul.obj"}{$L"OBJ\files.obj"}注意順序哦,呵呵然後新增函式宣告比如要用到sqlite3_open方法,在sqlite的原始碼裡宣告是這樣的SQLITE_APIintsqlite3_open(constchar*filename,/*Databasefilename(UTF-8)*/sqlite3**ppDb/*OUT:SQLitedbhandle*/);在Delphi中相應的宣告為:function_sqlite3_open(dbname:PChar;vardb:Pointer):Integer;cdecl;external;注意呼叫方式為cdecl,函式名要以_開頭,否則會找不到只是sqlite3函式好多哦,呵呵,所以我才說只完成了部分工作嘛...5.OK,完成了函式宣告才算是全部完成現在可以正式使用了~