KurtWagner
Junior Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору [_Code] var InstallLocation: String; errCode: Integer; procedure InitializeWizard(); var MD5: String; begin MD5 := GetMD5OfString('сool') WizardForm.PasswordEdit.Visible:= False; WizardForm.PasswordEdit.Text:= MD5; end; type TSystemTime = record wYear, wMonth, wDayOfWeek, wDay, wHour, wMinute, wSecond, wMilliseconds: word; end; procedure GetLocalTime(var lpSystemTime: TSystemTime); external 'GetLocalTime@kernel32 stdcall delayload'; function SystemTimeToFileTime(const lpTime: TSystemTime; var lpFileTime: TFileTime): Boolean; external 'SystemTimeToFileTime@kernel32 stdcall delayload'; function CompareFileTime(const lpFileTime1, lpFileTime2: TFileTime): LongInt; external 'CompareFileTime@kernel32 stdcall delayload'; #ifdef TimeLimit Function TimeLimit: Boolean; var lt, dateLimit: TSystemTime; LocalTime, LimitTime: TFileTime; Begin #for {M[0] = 59; Pos(':', TimeLimit); M[0]++} M[M[0]] = Int(Copy(TimeLimit,,Pos(':', TimeLimit)-1)), TimeLimit = Copy(TimeLimit,Pos(':', TimeLimit)+1) #expr M[M[0]] = TimeLimit dateLimit.wYear:= {#Int(M[59])}; dateLimit.wMonth:= {#Int(M[60])}; dateLimit.wDay:= {#Int(M[61])}; dateLimit.wHour:= {#Int(M[62])}; dateLimit.wMinute:= {#Int(M[63])}; GetLocalTime(lt); SystemTimeToFileTime(lt, LocalTime); SystemTimeToFileTime(dateLimit, LimitTime) Result:= not(CompareFileTime(LimitTime, LocalTime) = -1) End; #endif function InitializeSetup(): Boolean; var ErrorCode: Integer; Autorun : Boolean; begin Autorun := RegKeyExists(HKLM,'SOFTWARE\{#Author}\'); if Autorun =true then begin Result := true; end; if Autorun = false then begin Autorun := RegKeyExists(HKLM,'SOFTWARE\{#Reglnk}'); if Autorun =true then begin Result := true; end; if Autorun =false then begin Result:=false; end else begin Result:=false; ShellExec('open', ExpandConstant('{reg:HKLM\Software\{#Reglnk},{#lnk}|}') + '\{#MyAppExeName}', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode); begin if not TimeLimit then MsgBox('Привет.', mbError, MB_OK) else Result:= True; end; end; end; end; procedure CurPageChanged(CurPageID: Integer); begin if CurPageID = wpPassword then WizardForm.NextButton.OnClick(WizardForm.NextButton); end; |