Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: ManshetRU
Дата сообщения: 28.04.2016 23:13
sjwrec
Спасибо Вам большое. Я сделал немного по-другому. Вы мне очень помогли.
Автор: RRRRR
Дата сообщения: 29.04.2016 13:45
Поставил версию Inno Setup 5.5.9, теперь после компиляции старых скриптов вместо нормального окна приветствия выскакивает

скрин

в script studio пишет что параметр AppVerName изменился и настаивает на его изменении, я соглашаюсь этот параметр закомментирован и после этого все равно ничего не меняется, так же DisableWelcomePage = false не помогает
Автор: ZVSRus1957
Дата сообщения: 29.04.2016 14:35
RRRRR

DisableWelcomePage=no
DisableStartupPrompt=yes
Автор: RRRRR
Дата сообщения: 29.04.2016 14:41
ZVSRus1957

Сработало. Это теперь постоянно указывать надо или это у меня глючит ос , вроде эта настройка и так по умолчанию ?
Автор: ZVSRus1957
Дата сообщения: 29.04.2016 15:09
RRRRR

В новых версия Inno Setup начиная с версии 5.5.7 (могу ошибаться)
Страница Приветствия отключена по умолчанию. А то что у Вас на скрине, это всплывающее окно перед страницей Приветствия (встроенные msgbox), и скорее всего оно включено по умолчанию.
На форуме OSZone.net не однократно уже писалось.
Автор: vint56
Дата сообщения: 30.04.2016 21:54
T2008
[more=Пример]
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputBaseFilename=setup

[Languages]
Name: "default"; MessagesFile: "compiler:Default.isl"

[Files]
;Source: compiler:Examples\Readme.txt; DestDir: {app}\1; Check: IsChecked(1)
;Source: compiler:Examples\Readme.txt; DestDir: {app}\2; Check: IsChecked(2)

[Icons]
//0
Name: "{commondesktop}\Создать ярлык на рабочем столе ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(1)
Name: "{commondesktop}\Создать ярлык в Панели быстрого запуска ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(2)
//3
Name: "{commondesktop}\Русскоязычные радио ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(4)
Name: "{commondesktop}\Англоязычные радио ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(5)
//8
Name: "{commondesktop}\Оригинальные модели ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(7)
Name: "{commondesktop}\Красочные модели ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(8)
//9
Name: "{commondesktop}\Microsoft DirectX ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(10)
Name: "{commondesktop}\Microsoft Visual С++ 2005 Redistributable ct1"; Filename: "{app}\MyProg.exe"; Check: IsChecked(11)
//0
Name: "{commondesktop}\Создать ярлык на рабочем столе ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(1)
Name: "{commondesktop}\Создать ярлык в Панели быстрого запуска ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(2)
//3
Name: "{commondesktop}\Русскоязычные радио ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(4)
Name: "{commondesktop}\Англоязычные радио ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(5)
//6
Name: "{commondesktop}\Оригинальные модели ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(7)
Name: "{commondesktop}\Красочные модели ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(8)
//9
Name: "{commondesktop}\Microsoft DirectX ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(10)
Name: "{commondesktop}\Microsoft Visual С++ 2005 Redistributable ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(11)
Name: "{commondesktop}\Microsoft Visual С++ 2005 Redistributable64 ct2"; Filename: "{app}\MyProg.exe"; Check: IsChecked2(12)

[Code]
var
TasksPage,TasksPage2: TWizardPage;
CheckListBox,CheckListBox2: TNewCheckListBox;
BorderWidth,BorderWidth2: Integer;


function IsChecked(const Index: Integer): Boolean;
begin
Result:= CheckListBox.Checked[Index]
end;

function IsChecked2(const Index: Integer): Boolean;
begin
Result:= CheckListBox2.Checked[Index]
end;

procedure InitializeWizard();
begin
TasksPage := CreateCustomPage(wpWelcome, 'Выберите дополнительные задачи', 'Какие дополнительные задачи необходимо выполнить?');

CheckListBox := TNewCheckListBox.Create(WizardForm);
CheckListBox.Parent := TasksPage.Surface;
CheckListBox.SetBounds(ScaleX(0), ScaleY(0), ScaleX(417), ScaleY(210));
BorderWidth := (CheckListBox.Width-CheckListBox.ClientWidth) div 2;
CheckListBox.Flat := False;
CheckListBox.Color := clMenu;
CheckListBox.BorderStyle := bsNone;
CheckListBox.WantTabs :=True;

CheckListBox.AddCheckBoxEx('Дополнитьельные значки', '', 0, False, True, True, True, nil,True);
CheckListBox.AddCheckBoxEx('Создать ярлык на рабочем столе', '', 1, True, True, True, True, nil,True);
CheckListBox.AddCheckBoxEx('Создать ярлык в Панели быстрого запуска ', '', 1,True, True, True, True, nil,True);

CheckListBox.AddCheckBoxEx('Язык озвучки', '', 0, True, False, True, True, nil, True);
CheckListBox.AddRadioButtonEx('Русскоязычные радио', '', 1, True, True, nil, False);
CheckListBox.AddRadioButtonEx('Англоязычные радио', '', 1, False, True, nil, True);

CheckListBox.AddCheckBoxEx('Модели игроков', '', 0, True, False, True, True, nil, True);
CheckListBox.AddRadioButtonEx('Оригинальные модели', '', 1, True, True, nil, False);
CheckListBox.AddRadioButtonEx('Красочные модели', '', 1, False, True, nil, True);

CheckListBox.AddCheckBoxEx('Установить дополнительное программное обеспечение', '', 0, True, True, True, True, nil,True);
CheckListBox.AddCheckBoxEx('Microsoft DirectX', '', 1,True, True, True, True, nil,True);
CheckListBox.AddCheckBoxEx('Microsoft Visual С++ 2005 Redistributable', '', 1, True, True, True, True, nil,True);


TasksPage2 := CreateCustomPage(TasksPage.ID, 'Выберите дополнительные задачи', 'Какие дополнительные задачи необходимо выполнить?');

CheckListBox2 := TNewCheckListBox.Create(WizardForm);
CheckListBox2.Parent := TasksPage2.Surface;
CheckListBox2.SetBounds(ScaleX(0), ScaleY(0), ScaleX(417), ScaleY(210));
BorderWidth2 := (CheckListBox2.Width-CheckListBox2.ClientWidth) div 2;
CheckListBox2.Flat := False;
CheckListBox2.Color := clMenu;
CheckListBox2.BorderStyle := bsNone;
CheckListBox2.WantTabs :=True;

CheckListBox2.AddCheckBoxEx('Дополнитьельные значки', '', 0, False, True, True, True, nil,True);
CheckListBox2.AddCheckBoxEx('Создать ярлык на рабочем столе', '', 1, True, True, True, True, nil,True);
CheckListBox2.AddCheckBoxEx('Создать ярлык в Панели быстрого запуска ', '', 1,True, True, True, True, nil,True);

CheckListBox2.AddCheckBoxEx('Язык озвучки', '', 0, True, False, True, True, nil, True);
CheckListBox2.AddRadioButtonEx('Русскоязычные радио', '', 1, True, True, nil, False);
CheckListBox2.AddRadioButtonEx('Англоязычные радио', '', 1, False, True, nil, True);

CheckListBox2.AddCheckBoxEx('Модели игроков', '', 0, True, False, True, True, nil, True);
CheckListBox2.AddRadioButtonEx('Оригинальные модели', '', 1, True, True, nil, False);
CheckListBox2.AddRadioButtonEx('Красочные модели', '', 1, False, True, nil, True);

CheckListBox2.AddCheckBoxEx('Установить дополнительное программное обеспечение', '', 0, True, True, True, True, nil,True);
CheckListBox2.AddCheckBoxEx('Microsoft DirectX', '', 1,True, True, True, True, nil,True);
CheckListBox2.AddCheckBoxEx('Microsoft Visual С++ 2005 Redistributable', '', 1, True, True, True, True, nil,True);
CheckListBox2.AddCheckBoxEx('Microsoft Visual С++ 2005 Redistributable x64', '', 1,True, True, True, True, nil,True);
end;

[/more]
Автор: dinis124
Дата сообщения: 06.05.2016 14:54
Привет. Подскажите, как проверить установлен ли в системе Adobe Flash Player, и если не установлен то загрузить.

И если можно, пример использования ISCrypt.dll
Автор: BUU
Дата сообщения: 14.05.2016 10:41
Всем привет, подскажите пожалуйста, можно ли переделать это окно? или хотя бы сделать автопроверку языка Windows при описании выбора языка?
Автор: 307cwam
Дата сообщения: 16.05.2016 21:11
Здравствуйте все!
----------------------
Есть файл библиотека,
она входит в две разные программы.
То есть файл библиотека один, а использует его две программы.
То есть совместно используемый.

Если удалить одну из программ,
то файл библиотека тоже удаляется.
И программа вторая уже без него не работает,выдает ошибки.

-------------------------------------------------------------------------------
Подскажите как сделать так,
Чтобы при удалении программы файл библиотека
оставался бы на компьютере, если его использует другая программа,
не в момент удаления, а вообще.

А также,
Чтобы файл библиотека удалялся, если его использует программа,
которая в данный момент удаляется.

Добавлено:
А также,
Чтобы файл библиотека удалялся, если его использует Только программа,
которая в данный момент удаляется.
Автор: CUTA
Дата сообщения: 13.06.2016 09:22
Всем привет!
Кто нибудь знает пример скрипта для работы с библиотекой idp.dll? Ну или альтернативу.
Автор: painter7
Дата сообщения: 13.06.2016 15:34
CUTA, так вот же:
https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/inno-download-plugin/source-archive.zip
Все там.
Автор: CUTA
Дата сообщения: 13.06.2016 16:07
painter7 благодарю.
Автор: DMITRIY18111985
Дата сообщения: 16.06.2016 12:25
Всем привет. У меня возникает такая проблема, при распаковки последнего диска вылетает такая ошибка, дальше распаковка идёт только когда вставлю первый диск с экзешником. Как это исправить? Большое спасибо! [more] [/more]
Автор: sjwrec
Дата сообщения: 17.06.2016 16:56
DMITRIY18111985

Цитата:
Всем привет. У меня возникает такая проблема, при распаковки последнего диска вылетает такая ошибка, дальше распаковка идёт только когда вставлю первый диск с экзешником. Как это исправить? 


Файлы временных файлов должны быть первыми в списке Files
А уже потом файлы игры.


Автор: DMITRIY18111985
Дата сообщения: 17.06.2016 20:45
sjwrec


Цитата:
Файлы временных файлов должны быть первыми в списке Files
А уже потом файлы игры.


У меня порядок расположения таковой, где что ни так..?

[Files]
Source: Splash\Splash.png; Flags: dontcopy
Source: Splash\isgsg.dll; Flags: dontcopy
Source: Logo\logo.bmp; Flags: dontcopy
Source: Logo\CallbackCtrl.dll; Flags: dontcopy
Source: InstallFiles\*; Flags: dontcopy
Source: Slides\*; Flags: dontcopy
Source: Icons\*; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system

Source: InstallFiles\WizardImage.jpg; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\botva2.dll; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\ProgressBackground.png; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\ProgressImg.png; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\StatusPanel2.png; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\StatusPanel.png; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\Button.png; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\Tiger.cjstyles; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\Workspace.png; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\ISSkin.dll; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Source: InstallFiles\InnoCallback.dll; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
Автор: sjwrec
Дата сообщения: 21.06.2016 11:00
DMITRIY18111985

Source: InstallFiles\*; Flags: dontcopy правильно

а чтобы копировались в APP
их нужно брать уже из Temp во время установки

Например так:

Source: {tmp}\1.ico; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system

И пожалуйста не нарушайте правила форума.
1. Спрячьте скрин под More
2. Не используйте жирный шрифт.
Автор: usermode
Дата сообщения: 22.06.2016 11:24
Делаю бегущую строку на битмапе, двигаю прозрачный TLabel.
Проблема в том, что при движении строки создается "мерцание" или "моргание" движущегося текста. Я перепробовал всевозможные Repaint, Update, Refresh - но все равно текст моргает, как будто пропадает на несколько миллисекунд. Как можно решить эту проблему в Inno? Использование Copy делает строку дерганой, нужно чтобы была плавной.

Пример:
http://www109.zippyshare.com/v/2NLu80xf/file.html

--добавлено--
проблема решена перекомпиляцией Setup.e32 с присвоением свойства DoubleBuffered := True;
Автор: DMITRIY18111985
Дата сообщения: 28.06.2016 20:08
sjwrec


Цитата:
Source: InstallFiles\*; Flags: dontcopy  правильно
 
а чтобы копировались в APP
их нужно брать уже из Temp во время установки
 
Например так:
 
Source: {tmp}\1.ico; DestDir: {app}; Flags: ignoreversion; Attribs: hidden system
 
И пожалуйста не нарушайте правила форума.  
1. Спрячьте скрин под More
2. Не используйте жирный шрифт.


Спасибо! Чуть позже поэкспериментирую..))
Автор: frost745
Дата сообщения: 05.07.2016 22:16
подскажите пожалуйста.
делаю репак программы, всё инсталлируется и ярлык на столе появляется.
а когда с ключами /SILENT или /VERYSILENT то ярлыка то нет.
а как сделать чтобы и при "тихой" установке ярлыки на столе тоже появлялись?
Автор: Habib2302
Дата сообщения: 06.07.2016 12:06
frost745
скрипт дайте
Автор: krsk
Дата сообщения: 07.07.2016 04:12
Подскажите где ошибка?

Код:
; NSIS script (UTF-8) NSIS-Park-3 Unicode log
; Install

Unicode true - при сборке здесь ошибка.
SetCompressor /SOLID lzma
SetCompressorDictSize 8

; --------------------
; HEADER SIZE: 58232
; START HEADER SIZE: 300
; MAX STRING LENGTH: 8196
; STRING CHARS: 4691

OutFile [NSIS].exe
!include WinMessages.nsh
Автор: LorOginret
Дата сообщения: 09.07.2016 16:18
Инно анпакер поддерживающий русифицированую версию с wylek.ru
http://nashdisk.ru/2f0416/
Автор: MihailM
Дата сообщения: 09.07.2016 18:40
krsk
Цитата:
; NSIS script (UTF-8) NSIS-Park-3 Unicode log
....
....
!include WinMessages.nsh
Ну судя по этому , тебе похоже не сюда. У тебя похоже скрипт NSIS, а не InnoSetup.
Автор: Sutar
Дата сообщения: 13.07.2016 15:46
Здравствуйте,
как можно реализовать такой скрипт, чтоб во время установки "удалить" файлы, если они существуют?
Например, удалить папку sdhack (и всё, что в ней может присутствовать) в папке установки.
Автор: innonewbie
Дата сообщения: 13.07.2016 19:01
Например, так, если нужно удалить папку с файлами:

procedure CurStepChanged(CurStep: TSetupStep);
if CurStep = ssInstall then begin
if DirExists(ExpandConstant('{app}')+'\sdhack') then
DelTree(ExpandConstant('{app}')+'\sdhack', True, True, True);
end;
end;
Автор: Sutar
Дата сообщения: 13.07.2016 19:05
innonewbie
а если только файл?
Автор: Photon9
Дата сообщения: 15.07.2016 15:31
Подскажите как в скрипте указать прописывание дополнительных параметров в ярлыке: "C:\Program Files (x86)\Game\Game.exe" -language ru, очень неплохо бы сделать возможность выбора при установке, тоесть ru, en, de и т.д. или создания ярлыков для каждого параметра
Автор: innonewbie
Дата сообщения: 15.07.2016 16:34
Sutar, если один файл, то можно так:
procedure CurStepChanged(CurStep: TSetupStep);
if CurStep = ssInstall then begin
if FileExists(ExpandConstant('{app}')+'\sdhack\имя_файла.расширение') then
DeleteFile(ExpandConstant('{app}')+'\sdhack\имя_файла.расширение');
end;
end;

Если, например, несколько файлов по маске, то можно с помощью той же deltree, вот примеры из справки:
// Delete the directory C:\Test and everything inside it
DelTree('C:\Test', True, True, True);

// Delete files matching C:\Test\*.tmp
DelTree('C:\Test\*.tmp', False, True, False);

// Delete all files and directories inside C:\Test but leave the directory itself
DelTree('C:\Test\*', False, True, True);

Photon9
В секции Icons и прописывай параметр. Как пример:
[Icons]
Name: "{group}\{#MyAppName}"; Filename: {app}\Game\Game.exe; Parameters: "-language ru";
Name: "{commondesktop}\{#MyAppName}"; Filename: {app}\Game\Game.exe; Parameters: "-language ru";

Автор: vint56
Дата сообщения: 15.07.2016 19:53
Photon9
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application


[Types]
Name: full; Description: Full installation; Flags: iscustom;

[Components]
Name: "desktop"; Description: "Дополнительные значки:"; Types: full; Flags: fixed;
Name: "desktop\en"; Description: "Английский"; Types: full; Flags: exclusive;
Name: "desktop\ru"; Description: "Русский"; Types: full; Flags: exclusive;
Name: "desktop\ge"; Description: "Немецкий"; Types: full; Flags: exclusive;

[Languages]
Name: "english"; MessagesFile: "compiler:Languages\English.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
Name: "german"; MessagesFile: "compiler:Languages\German.isl"

[Icons]
Name: {group}\My Program; Filename: {app}\MyProg.exe
Name: {group}\{cm:UninstallProgram,My Program}; Filename: {uninstallexe}
Name: {commondesktop}\My Program; Filename: {app}\MyProg.exe; Parameters: -language ru; WorkingDir: {app}; Components: "desktop\ru"
Name: {commondesktop}\My Program; Filename: {app}\MyProg.exe; Parameters: -language en; WorkingDir: {app}; Components: "desktop\en"
Name: {commondesktop}\My Program; Filename: {app}\MyProg.exe; Parameters: -language ge; WorkingDir: {app}; Components: "desktop\ge"

[Code]
procedure InitializeWizard();
begin
WizardForm.ComponentsList.Color:=clMenu;
WizardForm.ComponentsList.BorderStyle := bsNone;
if ActiveLanguage='english' then
WizardForm.ComponentsList.Checked[1]:=true;
if ActiveLanguage='russian' then
WizardForm.ComponentsList.Checked[2]:=true;
if ActiveLanguage='german' then
WizardForm.ComponentsList.Checked[3]:=true;
end;

function ShouldSkipPage(PageID: Integer): Boolean;
begin
if (PageID = wpSelectComponents) then
Result:= True;
end;
Автор: agastan
Дата сообщения: 15.07.2016 20:50
[more] Привет парни, помогите пожалуйста, застрял.
Хочу сделать репак игры, но не знаю как сделать, чтобы по мимо установки игры, вместе с ней устанавливались сохранения с настройками.
Например: устанавливаю игру в D:/Games/Crysis и вместе с ней нужно, чтобы в \Documents\My Games\Crysis устанавливались сохранения с настройками, как сделать?

[Setup]
SourceDir=.
OutputDir=Setup
AppName=Crysis 2
AppVerName=Crysis 2 v1.9
AppVersion=1.9
DefaultDirName={pf}\Crysis 2
DisableProgramGroupPage=yes
AllowNoIcons=false
OutputBaseFilename=Setup
WizardImageFile=D:\Загрузки\Скрипты Inno Setup\Crysis 2\Crysis 164х314.bmp
WizardSmallImageFile=D:\Загрузки\Скрипты Inno Setup\Crysis 2\Crysis 53х53.bmp
SetupIconFile=D:\Загрузки\Скрипты Inno Setup\Crysis 2\Icon.ico
WindowVisible=false
WindowShowCaption=false
WindowResizable=false
Compression=lzma2/Ultra64
DiskSpanning=true
DiskSliceSize=1887436800
SlicesPerDisk=1
InternalCompressLevel=Ultra64

[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl

[Registry]
Root: HKLM; SubKey: "SOFTWARE\Wow6432Node\Crytek\Crysis 2\1.0"; ValueName: DisplayName; ValueData: """Crysis 2"""; ValueType: string;
Root: HKLM; SubKey: "SOFTWARE\Wow6432Node\Crytek\Crysis 2\1.0"; ValueName: Language; ValueData: 00000010; ValueType: dword;
Root: HKLM; SubKey: "SOFTWARE\Wow6432Node\Crytek\Crysis 2\1.0"; ValueName: LanguageName; ValueData: """Russian"""; ValueType: string;
Root: HKLM; SubKey: "SOFTWARE\Wow6432Node\Crytek\Crysis 2\1.0"; ValueName: ProgramGroup; ValueData: """C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Electronic Arts\\Crytek\\"""; ValueType: string;

[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}
Name: Soft; Description: Дополнительное ПО:; Flags: unchecked
Name: Soft\VCCheck; Description: Установить Microsoft Visual C++ 2008 Redist
Name: Soft\DirectX; Description: Установить DirectX

[Run]
Filename: {tmp}\vcredist_x86.exe; Tasks: Soft\VCCheck; Flags: skipifdoesntexist
Filename: {tmp}\DXSETUP.exe; Tasks: Soft\DirectX; Flags: skipifdoesntexist

[Files]
Source: ISSkin.dll; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression
Source: steam.cjstyles; DestDir: {tmp}; Flags: ignoreversion dontcopy nocompression
Source: D:\Games\Crysis 2\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension
Source: D:\Загрузки\Скрипты Inno Setup\Crysis 2\DirectX\*; DestDir: {tmp}
Source: D:\Загрузки\Скрипты Inno Setup\Crysis 2\Redistributables\*; DestDir: {tmp}

[Icons]
Name: {userdesktop}\Crysis 2; Filename: {app}\Bin32\Crysis2Launcher.exe; WorkingDir: {app}\Bin32; Tasks: desktopicon; Parameters: -mod MaLDoHDv4

[Code]
procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@files:isskin.dll stdcall';
procedure UnloadSkin(); external 'UnloadSkin@files:isskin.dll stdcall';
function ShowWindow(hWnd: Integer; uType: Integer): Integer; external 'ShowWindow@user32.dll stdcall';

function InitializeSetup:boolean;
begin
ExtractTemporaryFile('steam.cjstyles');
LoadSkin(ExpandConstant('{tmp}')+'\steam.cjstyles', '');
Result:=True;
end;

procedure InitializeWizard();
begin
WizardForm.BorderStyle := bsDialog;
end;

procedure DeinitializeSetup;
begin
ShowWindow(WizardForm.Handle,0);
UnloadSkin();
end;

var
DesktopIcon: TCheckBox; [/more]

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758

Предыдущая тема: Только инсталлятор


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.