Shegorat
Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору [Setup] AppName=LikeRusXP Localization AppVerName={cm:NameAndVersion,LikeRusXP Localization,6.01.12} AppVersion=6.01.12 DefaultDirName={pf}\LikeRusXP Localization DefaultGroupName=LikeRusXP Localization OutputBaseFilename=likerusxp 6.01.12 Compression=lzma LicenseFile=embedded\License.txt InfoBeforeFile=embedded\InfoBefore.txt WizardImageFile=embedded\WizardImage.bmp WizardSmallImageFile=embedded\WizardSmallImage.bmp SetupIconFile={tmp}\MAINICON.ico [Files] Source: "{tmp}\bass.dll"; DestDir: "{tmp}"; Flags: deleteafterinstall dontcopy Source: "{tmp}\sound.mp3"; DestDir: "{tmp}"; Flags: deleteafterinstall dontcopy Source: "{tmp}\ISSkin.dll"; DestDir: "{app}"; Flags: dontcopy Source: "{tmp}\Codejock.cjstyles"; DestDir: "{app}"; Flags: dontcopy Source: "{tmp}\Splash.png"; DestDir: "{tmp}"; Flags: deleteafterinstall ignoreversion dontcopy Source: "{tmp}\isgsg.dll"; DestDir: "{tmp}"; Flags: deleteafterinstall ignoreversion dontcopy Source: "{app}\LikeRusXP.exe"; DestDir: "{app}"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\limage.exe"; DestDir: "{app}"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\LikeRusXP.chm"; DestDir: "{app}"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\License.txt"; DestDir: "{app}"; MinVersion: 4.1.2222,5.0; Source: "{app}\Glossary\russian.lg3"; DestDir: "{app}\Glossary"; MinVersion: 4.1.2222,5.0; Source: "{app}\Store\elibrary.dll"; DestDir: "{app}\Store"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\lresdumper.dll"; DestDir: "{app}\Store"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\sl3core.dll"; DestDir: "{app}\Store"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\lires.exe"; DestDir: "{app}\Store"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\rb\lresdumper.dll"; DestDir: "{app}\Store\rb"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\rb\ResBinder.exe"; DestDir: "{app}\Store\rb"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\rb\readme.txt"; DestDir: "{app}\Store\rb"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\rb\english.uil"; DestDir: "{app}\Store\rb"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion Source: "{app}\Store\rb\russian.uil"; DestDir: "{app}\Store\rb"; MinVersion: 4.1.2222,5.0; Flags: ignoreversion [Run] Filename: "{app}\LikeRusXP.exe"; Description: "{cm:LaunchProgram,LikeRusXP}"; MinVersion: 4.1.2222,5.0; [Icons] Name: "{group}\LikeRusXP 6.01.12"; Filename: "{app}\LikeRusXP.exe"; MinVersion: 4.1.2222,5.0; Name: "{group}\{cm:ProgramOnTheWeb,LikeRusXP 6.01.12}"; Filename: "http://likerusxp.ru/"; MinVersion: 4.1.2222,5.0; Name: "{group}\{cm:UninstallProgram,LikeRusXP 6.01.12}"; Filename: "{uninstallexe}"; MinVersion: 4.1.2222,5.0; Name: "{commondesktop}\LikeRusXP 6.01.12"; Filename: "{app}\LikeRusXP.exe"; Tasks: "desktopicon"; MinVersion: 4.1.2222,5.0; Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\LikeRusXP"; Filename: "{app}\LikeRusXP.exe"; Tasks: "quicklaunchicon"; MinVersion: 4.1.2222,5.0; [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; MinVersion: 4.1.2222,5.0; Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; MinVersion: 4.1.2222,5.0; [CustomMessages] russian.NameAndVersion=%1, версия %2 russian.AdditionalIcons=Дополнительные значки: russian.CreateDesktopIcon=Создать значок на &Рабочем столе russian.CreateQuickLaunchIcon=Создать значок в &Панели быстрого запуска russian.ProgramOnTheWeb=Сайт %1 в Интернете russian.UninstallProgram=Деинсталлировать %1 russian.LaunchProgram=Запустить %1 russian.AssocFileExtension=Св&язать %1 с файлами, имеющими расширение %2 russian.AssocingFileExtension=Связывание %1 с файлами %2... [Languages] Name: russian; MessagesFile: compiler:Languages\Russian.isl [Messages] BeveledLabel=RePack by Gu® 2010 ////////////////////// Skin ////////////////////// [Code] #ifdef UNICODE #define PStr "AnsiString" #else #define PStr "String" #endif procedure LoadSkin(lpszPath: {#PStr}; lpszIniFileName: {#PStr}); external 'LoadSkin@files:isskin.dll stdcall delayload setuponly'; procedure LoadSkinUninst(lpszPath: {#PStr}; lpszIniFileName: {#PStr}); external 'LoadSkin@{tmp}\isskin.dll stdcall delayload uninstallonly'; procedure UnloadSkin(); external 'UnloadSkin@files:isskin.dll stdcall delayload setuponly'; procedure UnloadSkinUninst(); external 'UnloadSkin@{tmp}\isskin.dll stdcall delayload uninstallonly'; function ShowWindow(hWnd: Integer; uType: Integer): Integer; external 'ShowWindow@user32.dll stdcall'; function InitializeSetup(): Boolean; begin ExtractTemporaryFile('Codejock.cjstyles'); CreateDir(ExpandConstant('{sd}\ISSkin')); FileCopy(ExpandConstant('{tmp}\Codejock.cjstyles'), ExpandConstant('{sd}\ISSkin\Codejock.cjstyles'), True); LoadSkin(ExpandConstant('{sd}\ISSkin\Codejock.cjstyles'), 'NormalBlack.ini'); Result := True; end; function InitializeUninstall(): Boolean; begin FileCopy(ExpandConstant('{app}\isskin.dll'), ExpandConstant('{tmp}\isskin.dll'), True); FileCopy(ExpandConstant('{app}\Codejock.cjstyles'), ExpandConstant('{tmp}\Codejock.cjstyles'), True); LoadSkinUninst(ExpandConstant('{tmp}\Codejock.cjstyles'), 'NormalBlack.ini'); Result := True; end; procedure DeinitializeUninstall(); begin UnloadSkinUninst(); end; ////////////////////// Splash //////////////////////////// procedure ShowSplashScreen(p1:HWND;p2:string;p3,p4,p5,p6,p7:integer;p8:boolean;p9:Cardinal;p10:integer); external 'ShowSplashScreen@files:isgsg.dll stdcall delayload'; ////////////////////// Sound /////////////////////////// const BASS_SAMPLE_LOOP = 4; //повторение type HSTREAM = DWORD; //тип звукового потока function BASS_Init(device: Integer; freq, flags: DWORD; win: hwnd; CLSID: Integer): Boolean; external 'BASS_Init@files:BASS.dll stdcall delayload'; function BASS_StreamCreateFile(mem: BOOL; f: PChar; offset: DWORD; length: DWORD; flags: DWORD): HSTREAM; external 'BASS_StreamCreateFile@files:BASS.dll stdcall delayload'; function BASS_Start(): Boolean; external 'BASS_Start@files:BASS.dll stdcall delayload'; function BASS_ChannelPlay(handle: DWORD; restart: BOOL): Boolean; external 'BASS_ChannelPlay@files:BASS.dll stdcall delayload'; function BASS_Stop(): Boolean; external 'BASS_Stop@files:BASS.dll stdcall delayload'; function BASS_Free(): Boolean; external 'BASS_Free@files:BASS.dll stdcall delayload'; procedure InitializeWizard(); var Name1: string; i: Integer; begin ////////////////// Spalsh ////////////////////// ExtractTemporaryFile('Splash.png'); ShowSplashScreen(WizardForm.Handle,ExpandConstant('{tmp}')+'\Splash.png',1000,3000,1000,0,255,False,$FFFFFF,10); ///////////////// Splash /////////////////////// ExtractTemporaryFile('bass.dll'); ExtractTemporaryFile('sound.mp3'); if BASS_Init(-1, 44100, 0, 0, 0) then begin BASS_Start(); Name1:=ExpandConstant('{tmp}\sound.mp3'); i:=BASS_StreamCreateFile(FALSE, PChar(Name1), 0, 0, 4); if i <> 0 then begin BASS_ChannelPlay(i, True); end; end; end; procedure DeInitializeSetup(); begin //////////// ISSkin ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); UnloadSkin(); DeleteFile(ExpandConstant('{sd}\ISSkin\isskin.dll')); DeleteFile(ExpandConstant('{sd}\ISSkin\Codejock.cjstyles')); RemoveDir(ExpandConstant('{sd}\ISSkin')); //////////// ISSkin BASS_Stop(); //нужно для остановки проигрывания BASS_Free(); //нужно для быстрой выгрузки библиотеки вместе с муз. файлом end; ////////////////////// Setup end ////////////////////// procedure CurStepChanged(CurStep: TSetupStep); begin if CurStep = ssDone then MsgBox('Программа ' + '{#SetupSetting("AppName")}' + ' установлена!', mbInformation, MB_OK); end; |