delphiÓësqlite
from : http://zhyhero.googlepages.com/heartset
file:0 Ç°ÑÔ
±¾ÎĵÄÄ¿µÄÔÚÓÚ²ÉÓÃÁ÷Ë®ÕË·½Ê½À´¼Ç¼ѧϰdelphi·ÃÎÊǶÈëʽÊý¾Ý¿âsqliteÖеÄһЩµãµÎ¡£»¶Ó¸÷λͬºÃ¹²Í¬Ñ§Ï°ºÍÅúÆÀÖ¸Õý¡£
file:1 ×¼±¸¹¤×÷part1
delphi°æ±¾:delphi2007 for win32 update3¡£ÈÎÒâ°²×°°æ±¾¼´¿É¡£
sqlite dll°æ±¾:3.5.3¡£Ä¿Ç°×îа汾µÄsqliteÒýÇæ¡£[ http://www.sqlite.org/ ]
sqlite for delphi:simple sqlite 3.0 for delphi¡£Ä¿Ç°µÄ×îа汾µÄ·¢²¼ÈÕÆÚΪ27 August 2007£¬Ö§³Ösqlite dll°æ±¾3.4.2¡£¾¼òµ¥²âÊÔ£¬3.5.3Ò²ÊÇ¿ÉÒԵġ£×Ô´ødemo¡£[ http://www.itwriting.com/sqlitesimple.php ]
file:2 ×¼±¸¹¤×÷part2
н¨Ò»¸ö´°ÌåÓ¦ÓóÌÐò¹¤³Ì£¬²¢É趨±£´æµÄÎļþ¼Ð¡£½«simple sqlite 3.0 for delphi ÖÐµÄ sqlite3.pas£¬sqlite3table.pas£¬sqlite3udf.pas¿½±´ÖÁ¹¤³ÌËùÔÚµÄÎļþ¼Ð¡£²¢ÔÚ¹¤³ÌÖÐÌí¼ÓÕâÈý¸öÎļþ¡£¿½±´sqlite.dllµ½±àÒëÉú³ÉexeÎļþµÄÎļþ¼Ð¡£Õâ¸öÒª¿´¸öÈ˵ÄÉ趨¡£
file:3 ³õ²½²âÊÔ
ÒýÓÃSQLiteTable3.pasµ¥Ôª¡£
ÔÚ´°ÌåÉÏ´´½¨Ò»¸ö½ÐbtnVersionµÄ°´Å¥(Tbutton)¡£ÔÚbtnVersionµÄclickʼþÖÐдÈëÏÂÃæµÄ´úÂë¡£
procedure TfrmAbout.btnVersionClick(Sender: TObject);
var
SqliteDB:TSQLiteDatabase;
begin
SqliteDB:=TSQLiteDatabase.Create('');
showmessage('Sqlite dll version:'+SqliteDb.version);
SqliteDB.Free;
end;
±àÒëÔËÐУ¬³É¹¦µÄ»°£¬½«»áÏÔʾµ±Ç°µÄsqlite dllµÄ°æ±¾ºÅ£¬ÎÒµÄÊÇ3.5.3¡£
file:4 ¼òµ¥¹¤×÷ÔÀíÃèÊö
ÔÚsimple sqlite3.0 for delphiµÄ¼¸¸öÎļþÖУ¬Ö÷ÒªÓõ½Á½¸öÎļþ¡£·Ö±ðÊÇsqlite3.pas£¬sqlite3table.pas¡£
sqlite3.pasʵÏÖsqlite.dllµÄ½Ó¿ÚÍⲿ¶¨Òå¡£
sqlite3table.pas½øÐмòµ¥µÄ·ÃÎʺ¯Êý·â×°¡£
ÔÚdelphiÖУ¬Í¨¹ýsqlite3table.pasÀ´ÊµÏÖ¶ÔsqliteÊý¾Ý¿âµÄ¸÷ÖÖ·ÃÎÊ¡£
¹ØÓÚsqlite3udf.pas£¬¸ù¾Ý×÷ÕßµÄÃèÊö£¬Ö÷ÒªÓÃÓë´´½¨Óû
Ïà¹ØÎĵµ£º
3.2 Óû§µÇ¼·½°¸
ÔÚ½øÈëÒ»¸öϵͳʱ£¬±ØÐëÏÈÔڵǼ´°ÌåÖÐÊäÈëÕýÈ·µÄÓû§ÃûºÍÃÜÂë²ÅÄܽøÈë¡£ÕâÑù¿ÉÒÔÈ·±£ÏµÍ³µÄ°²È«ÐԺͱ£ÃÜÐÔ£¬µÇ¼´°ÌåµÄÖÆ×÷°´ÕÕϵͳµÄ´óС¼°Óô¦£¬¿ÉÒÔ·ÖΪ²»Í¬µÄµÇ¼´°ÌåÑùʽ£¬ÔÚϵͳµÚÒ»´ÎµÇ¼ǰ£¬Ê×ÏÈÒª¶Ô²Ù×÷Ô±ÐÅÏ¢½øÐÐÏàÓ¦µÄÉèÖᣱ¾½Ú½«¶ÔµÇ¼´°Ìå¼°²Ù×÷Ô±¹ÜÀí´°ÌåµÄÖÆ×÷¹ý³Ì½øÐÐÏêϸµÄ˵Ã÷ ......
ÎÒÃÇÄÜ¿´µ½ÒÔÏ´úÂë
var pSource,pDest:PChar;
len: integer;
.......................//һЩ´úÂë
Move(pSource,pDest,len); //´íÎó
Move(pSource^,pDest^,len); //ÕýÈ·
¿´ÆðÀ´È·ÊµºÃÏñÊÇ´«Öµ£¬¶ø²»ÊÇ´«µØÖ·£¬µ«ÊǸ÷λ±ðÍüÁË£¬Õâ²»ÊÇC£¬C++£¬¶øÊÇDelphi
Object Pascal,ËùÒÔ£¬¾ø²»ÄÜ´Óº¯Êýµ ......
×¢£º ʹÓôíÎ󣬻òÕßÔڸüӵĵط½Ã»Óмӣ¬¿ÉÄÜ»á³öÏÖ"privileged instruction"´íÎ󣬻òÕßµØÖ··ÃÎÊ´íÎó¡£
³£¼ûµÄµ÷ÓùßÀýÓÐregister, pascal, cdecl, stdcall, safecall¡£º¯ÊýµÄµ÷ÓùÜÀí¾ö¶¨Á˲ÎÊýÈçºÎ´«µÝ¸ø×Ó¹ý³Ì£¬²¢´Ó¶ÑÕ»ÖÐÍ˳ö£¬ÒÔ¼°¼Ä´æÆ÷ÔÚ²ÎÊý´«µÝÖеÄʹÓ㬴íÎóºÍÒì³£µÄ´¦Àí¡£DelphiÖÐĬÈϵĵ ......
Ò» DllµÄÖÆ×÷Ò»°ã²½Öè
¶þ ²ÎÊý´«µÝ
Èý DLLµÄ³õʼ»¯ºÍÍ˳öÇåÀí[Èç¹ûÐèÒª³õʼ»¯ºÍÍ˳öÇåÀí]
ËÄ È«¾Ö±äÁ¿µÄʹÓÃ
Îå µ÷Óþ²Ì¬ÔØÈë
Áù µ÷Óö¯Ì¬ÔØÈë
Æß ÔÚDLL½¨Á¢Ò»¸öTForM
°Ë ÔÚDLLÖн¨Á¢Ò»¸öTMDIChildForM
¾Å ʾÀý£º
Ê® DelphiÖÆ×÷µÄDllÓëÆäËûÓïÑԵĻìºÏ ......
// ÅжÏÊÇ·ñÊÇÊýÖµÐÍ By yangxiao 2007.7.21
function isNumeric(strText: WideString): Boolean;
var
s: string;
i, l, p: Integer;
begin
Result := False;
l := Length(strText);
if l = 0 then Exit;
s := '';
for i:=1 to l do
......