Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define AppName "World of Tanks Blitz"
- #define MyAppName "World of Tanks Blitz Update"
- #define AppVer "6.9"
- #define AppVerUpd "6.10"
- #define OutName "NSU610"
- ;НЕ ЗАБЫТЬ!!! Отредактировать директиву секции InstallDelete
- [Setup]
- AppName={#MyAppName}
- AppVerName={#MyAppName} {#AppVerUpd} by @vladi1603
- AppVersion={#AppVerUpd}
- AppId=WoTBlitz\vladi1603
- DefaultDirName={pf}\{#AppName}
- DefaultGroupName={#AppName}
- Compression=none
- OutputDir=C:\Users\vladi\Desktop
- OutputBaseFilename={#OutName}
- InfoBeforeFile=readme.rtf
- SetupIconFile=game.ico
- WizardSmallImageFile=install.bmp
- DisableProgramGroupPage=yes
- DisableFinishedPage=True
- DisableReadyPage=True
- [Languages]
- ;Язык по умолчанию интерфейса установщика
- Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
- [Icons]
- ;Создание ярлыка на рабочем столе после успешной установки приложения
- Name: "{commondesktop}\World of Tanks Blitz"; Filename: "{app}\wotblitz.exe"
- [InstallDelete]
- ;Файлы\папки которые должны удалится при Установке приложения
- Type: filesandordirs; Name: "{app}\Skin Builder Projects"
- [UninstallDelete]
- ;Файлы\папки которые должны удалится при Удалении приложения
- Type: filesandordirs; Name: "{userdocs}\DAVAProject"
- [Registry]
- ;Реестр дополняется параметр Version (с помощью константы olddata) и значением 1.1 и так далее
- Root: HKCU; Subkey: "Software\WoTBlitz"; ValueType: string; ValueName: "Version"; ValueData: "{#AppVerUpd}"; Flags: preservestringtype uninsdeletekey
- [Files]
- ;Файлы приложения, установочный файл и вся его директория
- Source: "C:\WoTBlitz\update\wotblitz.exe"; DestDir: "{app}"; Flags: ignoreversion
- Source: "C:\WoTBlitz\update\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
- ;Файлы, Оформление окон
- Source: "VclStylesinno.dll"; DestDir: {app}; Flags: dontcopy
- Source: "SmokeyQuartzKamri.vsf"; DestDir: {app}; Flags: dontcopy
- ;Файлы, Splash
- Source: "isgsg.dll"; DestDir: "{tmp}"; Flags: ignoreversion dontcopy nocompression
- Source: "Splash.png"; DestDir: "{tmp}"; Flags: ignoreversion dontcopy nocompression
- [Code]
- //Процедура, Оформление окон
- procedure LoadVCLStyle(VClStyleFile: String); external 'LoadVCLStyleW@files:VclStylesInno.dll stdcall';
- procedure UnLoadVCLStyles; external 'UnLoadVCLStyles@files:VclStylesInno.dll stdcall';
- //Процедура, Splash
- procedure ShowSplashScreen(p1:HWND;p2:AnsiString;p3,p4,p5,p6,p7:integer;p8:boolean;p9:Cardinal;p10:integer);
- external 'ShowSplashScreen@files:isgsg.dll stdcall delayload';
- //Функция, Оформление окон и Обновление
- function InitializeSetup: Boolean;
- var
- ResultStr: string;
- begin
- Result := False;
- ExtractTemporaryFile('SmokeyQuartzKamri.vsf');
- LoadVCLStyle(ExpandConstant('{tmp}\SmokeyQuartzKamri.vsf'));
- if RegQueryStringValue(HKCU, 'Software\WoTBlitz', 'Version', ResultStr) and
- (ResultStr = '{#AppVer}') then
- begin
- Result := MsgBox('Клиент игры найден. Продолжить установку?', mbConfirmation, MB_YESNO) = idYes;
- if not Result then
- MsgBox('Обновление клиента отменено.', mbInformation, MB_OK);
- end else
- MsgBox('Клиент игры не найден!' #13 'Или версия клиента не соответствует!' #13#13 'Обновление не может быть установлено!', mbConfirmation, MB_OK);
- end;
- //Читаем значение параметра Version из реестра и присваиваем его переменной ResultStr
- //Если значение параметра Version равно версии приложения, обновление устанавливается, если не равно или не существует – установка прекращается
- //Функция, Оформление окон
- procedure DeinitializeSetup();
- begin
- UnLoadVCLStyles;
- end;
- //Функция, Splash
- procedure InitializeWizard();
- begin
- ExtractTemporaryFile('Splash.png');
- ShowSplashScreen(WizardForm.Handle,ExpandConstant('{tmp}\Splash.png'),1000,3000,1000,0,255,True,$FFFFFF,10);
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement