ÓÃDelphi±àÖÆ¿É×Ô¶¯Éý¼¶³ÌÐò
ÔÚ±àÖÆÁËÒ»¸öÓ¦ÓóÌÐòºóµÄά»¤½×¶Î£¬ÎÒÃÇ»áÃæÁÙ¸øÓ¦ÓóÌÐòÉý¼¶µÄ¹¤×÷.ÎÞÒÉ£¬ÊÖ¹¤Éý¼¶µÄ¹¤×÷ÊÇÊ®·Ö·±ËöµÄ£¬Äã¿ÉÄÜ»áÐèÒªµ½Óû§µÄ»úÆ÷ÉÏÈ¥¸üÐÂÎļþ.¿ÉÊÇ£¬Èç¹ûÄܱàÒ»¸ö×Ô¶¯Éý¼¶³ÌÐò£¬·ÅÔÚÍøÂçÉÏ£¬ÈÃÓû§ÏÂÔØ£¬Ö»ÐèÖ´ÐÐһϾÍÍê³ÉÉý¼¶¹¤×÷£¬²»ÊǺܷ½±ãÂð£¿Æäʵ£¬ÓÃDelphi¿ÉÒԺܷ½±ãµØ±àÖÆ³öÕâÑùÒ»¸öµÄ³ÌÐò.
ÒÔÏÂÊÇÎÒÃǵÄÀý×Ó£¬ÉèÎÒÃÇÒѾÓÐÒ»¸öÓ¦ÓóÌÐòThis.exe£¬Òª¶ÔËüÉý¼¶£¬ÓÃÀ´Éý¼¶µÄ³ÌÐòΪUpgrade.exe.
1£®ThisµÄ¹¤³ÌÎļþ¿ò¼Ü
program THIS;
uses
SysUtils,
Windows,
Forms,
...;
ÎÒÃǽ«ËüдÈë´úÂëÖУ¬ÒòΪÕâÔÚDelphiµÄ¹¤³ÌÎļþÖÐÊÇûÓÐ×Ô¶¯Éú³ÉµÄ.“…”²¿·ÖÊÇÄã´´½¨µÄ´°Ì岿·Ö
Var
Fn : String;
TSI : TStartupInfo;
TPI : TProcessInformation;
{$R *.RES}
begin
“Éý¼¶³ÌÐò”ʹÓÃFileAgeÀ´¼ì²éÔÀ´Ó¦ÓóÌÐòµÄ½¨Á¢Ê±¼ä£¬Èç¹û¼ì²âµ½µÄÊǾɰ汾£¬ÔòÌáʾÉý¼¶:
IF FileAge(‘SomeServerSomeDirthis.exe‘) ¡µ FileAge(ParamStr(0)) THEN
IF Application.MessageBox(‘ÕâÊÇÒ»¸ö¸üа汾µÄTHIS.EXE.‘+££13‘ÄãÒªµÃµ½Ð°汾µÄÉý¼¶ÎļþÂ𣿑, ‘Upgrade Time!‘,1) = 1 THEN
Begin
ÔËÐÐÉý¼¶³ÌÐòʱ£¬Éý¼¶³ÌÐòÓ¦ÓëÔÖ÷³ÌÐòthis.exeÔÚͬһĿ¼ÏÂ.Èç¹ûµ±ËüÆô¶¯Ê±£¬Õâ¸ö°æ±¾Ö÷³ÌÐòÓ¦¸ÃÍ˳ö£¬µ«Òª±£Ö¤Ëü²»»áɾ³ýÈκÎÎļþ£¬ÒòΪ´ËʱApplication.Initialize»¹Ã»Óб»µ÷ÓÃ.´úÂëÈçÏÂ:
Fn:= ExtractFilePath(ParamStr(0))+‘UpgradeThis.exe‘;
FillChar(TSI, SizeOf(TSI), 0);
TSI.CB := SizeOf(TSI);
IF CreateProcess (PChar(Fn), NIL, NIL, NIL, False,
DETACHED_PROCESS, NIL, NIL, TSI, TPI)
THEN Exit
µ«ÊÇ£¬Èç¹û“Éý¼¶³ÌÐò”ÓÉÓÚijЩÔÒòûÓÐÔËÐУ¬ÎÒÃÇ´ËʱӦ¸Ã¸æËßÓû§£¬ËûÄÜͨ¹ýÆäËû·½·¨µÃµ½Ò»¸ö¸üеijÌÐò°æ±¾£¬ÕâʱÎÒÃÇÒÀÈ»Í˳öÖ÷³ÌÐòÒÔ±ãÓû§Éý¼¶.Èç¹û±ØÒªµÄ»°£¬Ò²¿ÉÒÔ¼ÌÐø×°Èë²¢ÔËÐоɰ汾.
ELSE
Begin
messagebeep(0);
Application.MessageBox(‘²»ÄÜÍê³ÉÎļþ¿½±´.‘+‘ ‘ ÇëÊÖ¹¤¿½±´£¡.‘, ‘Copy Error!‘,1);
Exit;
End;
End;
Application.Initialize;
Application.Title := ‘This‘;
Application.HelpFile := ‘This.hlp‘;
{autocreate forms, etc.}
Application.Run;
end.
Èç¹û×Ô¶¯Éý¼¶³ÌÐòÊÇÒ»¸ö¿ØÖÆÌ¨³ÌÐò£¬ÄÇôһ
Ïà¹ØÎĵµ£º
Chr ½«Ò»¸öÓÐÐòÊý¾Ýת»»ÎªÒ»¸öANSI×Ö·û
Ord ½«Ò»¸öÓÐÐòÀàÐÍֵת»»ÎªËüµÄÐòºÅ
Round ת»»Ò»¸öʵÐÍֵΪËÄÉáÎåÈëºóµÄÕûÐÍÖµ
Trunc ת»»Ò»¸öʵÐÍֵΪСÊý½Ø¶ÏºóµÄÕûÐÍÖµ
Int ·µ»Ø¸¡µãÊýµÄÕûÊý²¿·Ö
IntToStr ½«Êýֵת»»Îª×Ö·û´ ......
15±¾DelphiÊé¼®(PDF¸ñʽ)ÏÂÔØ (ת)
ÎļþÃû: Delphi×é¼þ²Î¿¼´óÈ«.rar
ÏÂÔØµØÖ·: http://www.rayfile.com/files/678ca1e3-f73f-11de-9d02-0014221b798a/
ÎļþÃû: DelphiÐÅϢϵͳ¿ª·¢ÊµÀý¾«Ñ¡.rar
ÏÂÔØµØÖ·: http://www.rayfile.com/files/fb328f02-f73e-11de-8a76-0014221b798a/
ÎļþÃû ......
ÏûÏ¢µÄ´¦ÀíÁ÷³Ì£¬Á÷³ÌÈçÏ£º
ÆäÅÉ·¢´¦Àí¹ý³ÌÏêϸÈçÏ£º
×¢Ò⣺TWinControlÀïÃæWndProcÓе÷ÓÃϵͳAPI DefWindowProc,¸Ãº¯Êýµ÷ÓÃȱʡµÄ´°¿Ú¹ý³ÌÀ´ÎªÓ¦ÓóÌÐòûÓд¦ÀíµÄÈκδ°¿ÚÏûÏ¢ÌṩȱʡµÄ´¦Àí¡£¶øTWinControlÀïÃæDefaultHandlerÓÖµ÷ÓÃÁËϵͳAPI CallWindowProc£¬¸Ãº¯ÊýCallWindowProc½«ÏûÏ¢ÐÅÏ¢´«Ë͸øÖ¸¶¨µÄ´°¿ ......
DelphiÕýÔò±í´ïʽʹÓ÷½·¨£¨TPerlRegEx£©
Õý ÎÄ£º
ʹÓÃDelphi¿ª·¢Èí¼þÎÞÒÉÊÇÒ»ÖֱȽϸßЧÂʵķ½Ê½£¬ÍêÈ«¶ÔÏóµÄÓïÑÔ£¬Ñϸñ¿ØÖƵÄÓï·¨£¬¿ÉÊÓ»¯¿ª·¢»·¾³µÄÐÔÄÜ£¬±àÒëÆ÷µÄËٶȺÍÒѱàÒë´úÂëµÄЧÂÊ£¬±à³ÌÓïÑԵŦÄܼ°Æä¸´ÔÓÐÔ£¬Êý¾Ý¿â½á¹¹µÄÁé»îÐԺͿÉÀ©Õ¹ÐÔ£¬¿ò¼Ü¶ÔÉè¼ÆºÍʹÓÃģʽµÄÀ©³äÎÞÒɶ¼ÊÇdelph ......
ÍøÉÏDownµÄÒ»¸öµ¥Ôª.×Ô¼º¸ÄÁËÏÂ. unit utCRC32;
interface
uses
Windows,SysUtils,Classes;
const //Crc32±í
Crc32Tab: Array[0..$FF] of LongInt =
($00000000, $77073096, $ee0e612c, $990951ba, $076dc419, $706af48f,
$e963a535, $9e6495a3, $0edb8832, $79dcb8a4, $e0d5e91e, $97d2d988,
$0 ......