Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Закрытая тема
Настройки темы
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Ветеран


Сообщения: 1133
Благодарности: 581


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: jameszero
Дата: 08-11-2010
Описание: тема закрыта
Лимит страниц.
Тема закрыта.
Продолжение по ссылке Скрипты Inno Setup. Помощь и советы [часть 3]




Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;
    Предыдущая версия: 5.3.0 [07.04.2009] - Скачать (зеркало) | Русификатор (зеркало);

  • Inno Script Generator - ещё один редактор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать;

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы. Официальный сайт - недоступен.
    Последняя версия: 2.0.8 [12.11.2006] - Страница с зеркалами;

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • InnoSetup Script Joiner - Программа для объединения нескольких скриптов InnoSetup в один;

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.3 [11.09.2009] - Скачать;


Ссылка на архив предыдущей темы (также можно скачать из вложения)

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.


Отправлено: 22:06, 23-08-2009

 

Пользователь


Сообщения: 129
Благодарности: 76

Профиль | Отправить PM | Цитировать


Цитата Lancer2404:
А не подскажете какой ключ в реестре отвечает за добавление ярлыков в папку игры на windows vista? »
За это отвечает GameuxInstallHelper.dll

Отправлено: 20:24, 03-10-2009 | #201



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 22
Благодарности: 0

Профиль | Отправить PM | Цитировать


А поподробнее можно а то я новичек в этом деле

Отправлено: 20:58, 03-10-2009 | #202


Новый участник


Сообщения: 22
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо.

Отправлено: 21:23, 03-10-2009 | #203


Пользователь


Сообщения: 129
Благодарности: 76

Профиль | Отправить PM | Цитировать


Цитата Lancer2404:
А поподробнее можно а то я новичек в этом деле »
Можно, нужна сама библиотека "GameuxInstallHelper.dll".

Сам скрипт (Пример для юникод версии Inno):
читать дальше »

Код: Выделить весь код
[Setup] 
AppName=Call of Juarez - Bound in Blood 
AppVerName=Call of Juarez - Bound in Blood 
DefaultDirName={pf}\Call of Juarez - Bound in Blood 
OutputDir=userdocs:CoJ_Install. 
 
[Files] 
Source: "GameuxInstallHelper.dll"; DestDir: "{app}"; Flags: ignoreversion overwritereadonly; 
Source: "CoJBiBGame_x86.exe"; DestDir: "{app}"; Flags: ignoreversion; 
 
[code] 
 
const 
  PlayTask = 0; 
 
type 
  TGUID = record 
  Data1: Cardinal; 
  Data2, 
  Data3: Word; 
  Data4: array [0..7] of char; 
end; 
 
function GenerateGUID(var GUID: TGUID): Cardinal; 
 external 'GenerateGUID@files:GameuxInstallHelper.dll stdcall setuponly'; 
function AddToGameExplorer(Binary: String; Path: String; InstallType: Integer; var GUID: TGUID): Cardinal; 
 external 'AddToGameExplorerW@files:GameuxInstallHelper.dll stdcall setuponly'; 
function CreateTask(InstallType: Integer; var GUID: TGUID; TaskType: Integer; TaskNumber: Integer; TaskName: String; Binary: String; Parameters: String): Cardinal; 
 external 'CreateTaskW@files:GameuxInstallHelper.dll stdcall setuponly'; 
function RetrieveGUIDForApplication(Binary: String; var GUID: TGUID): Cardinal; 
 external 'RetrieveGUIDForApplicationW@{app}\GameuxInstallHelper.dll stdcall uninstallonly'; 
function RemoveFromGameExplorer(var GUID: TGUID): Cardinal; 
 external 'RemoveFromGameExplorer@{app}\GameuxInstallHelper.dll stdcall uninstallonly'; 
function RemoveTasks(var GUID: TGUID): Cardinal; 
 external 'RemoveTasks@{app}\GameuxInstallHelper.dll stdcall uninstallonly'; 
 
var 
  GUID: TGUID; 
 
procedure CurStepChanged(CurStep: TSetupStep); 
begin 
  if CurStep = ssInstall then 
    GenerateGUID(GUID); 
  if CurStep = ssPostInstall then 
  begin 
    AddToGameExplorer(ExpandConstant('{app}\CoJBiBGame_x86.exe'), ExpandConstant('{app}'), 3, GUID); 
    CreateTask(3, GUID, PlayTask, 0, 'Play', ExpandConstant('{app}\CoJBiBGame_x86.exe'), ''); 
  end; 
end; 
 
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); 
begin 
  if CurUninstallStep = usUninstall then 
  begin 
    RetrieveGUIDForApplication(ExpandConstant('{app}\CoJBiBGame_x86.exe'), GUID); 
    RemoveFromGameExplorer(GUID); 
    RemoveTasks(GUID); 
 
    UnloadDll(ExpandConstant('{app}\GameuxInstallHelper.dll')); 
  end; 
end;

Отправлено: 21:25, 03-10-2009 | #204


Новый участник


Сообщения: 22
Благодарности: 0

Профиль | Отправить PM | Цитировать


А вот я растягиваю картинку на весь экран,а при выборе компонентов,как сделать чтобы белого фона сзади не было?

Отправлено: 21:34, 03-10-2009 | #205


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите мне пожалуйста. Объедините пожалуйста эти скрипты:

читать дальше »

[code]
const
Color = clblack;

procedure InitializeWizard();
begin
WizardForm.PageNameLabel.Font.Color:=clWhite;
WizardForm.Font.Color:=clWhite;
WizardForm.Color:=Color;
WizardForm.WelcomePage.Color:=Color;
WizardForm.InnerPage.Color:=Color;
WizardForm.FinishedPage.Color:=Color;
WizardForm.LicensePage.Color:=Color;
WizardForm.PasswordPage.Color:=Color;
WizardForm.InfoBeforePage.Color:=Color;
WizardForm.UserInfoPage.Color:=Color;
WizardForm.SelectDirPage.Color:=Color;
WizardForm.SelectComponentsPage.Color:=Color;
WizardForm.SelectProgramGroupPage.Color:=Color;
WizardForm.SelectTasksPage.Color:=Color;
WizardForm.ReadyPage.Color:=Color;
WizardForm.PreparingPage.Color:=Color;
WizardForm.InstallingPage.Color:=Color;
WizardForm.InfoAfterPage.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.DiskSpaceLabel.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.GroupEdit.Color:=Color;
WizardForm.PasswordLabel.Color:=Color;
WizardForm.PasswordEdit.Color:=Color;
WizardForm.PasswordEditLabel.Color:=Color;
WizardForm.ReadyMemo.Color:=Color;
WizardForm.TypesCombo.Color:=Color;
WizardForm.WelcomeLabel1.Color:=Color;
WizardForm.InfoBeforeClickLabel.Color:=Color;
WizardForm.MainPanel.Color:=Color;
WizardForm.PageNameLabel.Color:=Color;
WizardForm.PageDescriptionLabel.Color:=Color;
WizardForm.ReadyLabel.Color:=Color;
WizardForm.FinishedLabel.Color:=Color;
WizardForm.YesRadio.Color:=Color;
WizardForm.NoRadio.Color:=Color;
WizardForm.WelcomeLabel2.Color:=Color;
WizardForm.LicenseLabel1.Color:=Color;
WizardForm.InfoAfterClickLabel.Color:=Color;
WizardForm.ComponentsList.Color:=Color;
WizardForm.ComponentsDiskSpaceLabel.Color:=Color;
WizardForm.BeveledLabel.Color:=Color;
WizardForm.StatusLabel.Color:=Color;
WizardForm.FilenameLabel.Color:=Color;
WizardForm.SelectDirLabel.Color:=Color;
WizardForm.SelectStartMenuFolderLabel.Color:=Color;
WizardForm.SelectComponentsLabel.Color:=Color;
WizardForm.SelectTasksLabel.Color:=Color;
WizardForm.LicenseAcceptedRadio.Color:=Color;
WizardForm.LicenseNotAcceptedRadio.Color:=Color;
WizardForm.UserInfoNameLabel.Color:=Color;
WizardForm.UserInfoNameEdit.Color:=Color;
WizardForm.UserInfoOrgLabel.Color:=Color;
WizardForm.UserInfoOrgEdit.Color:=Color;
WizardForm.PreparingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Color:=Color;
WizardForm.UserInfoSerialLabel.Color:=Color;
WizardForm.UserInfoSerialEdit.Color:=Color;
WizardForm.TasksList.Color:=Color;
WizardForm.RunList.Color:=Color;
WizardForm.SelectDirBrowseLabel.Color:=Color;
WizardForm.SelectStartMenuFolderBrowseLabel.Color:=Color;
end;


читать дальше »

[code]
var
ProgressBar1: TNewProgressBar;

procedure animateprogress;
begin ProgressBar1.Position := ProgressBar1.Position+1
end;

procedure InitializeWizard();
begin
WizardForm.FileNameLabel.Visible:=false;
WizardForm.StatusLabel.Top:=ScaleY(81);
WizardForm.StatusLabel.Width:=ScaleX(262);
WizardForm.ProgressGauge.Top:=ScaleY(100);
WizardForm.ProgressGauge.Left:=ScaleX(155);
WizardForm.ProgressGauge.Width:=ScaleX(262);

ProgressBar1 := TNewProgressBar.Create(wizardform);
with ProgressBar1 do
begin
Parent := wizardform.installingpage;
Left := ScaleX(0);
Top := ScaleY(100);
Width := ScaleX(150);
Height := ScaleY(21);
Max := 3; //задается как кол-во файлов в [_run]
end;
end;



читать дальше »

[Files]
Source: D:\Влад\Скрипты Inno Setup\3Tq4d6iRHl.bmp; DestDir: {tmp}; Flags: dontcopy

[code]
var
WelcomeLabel1, WelcomeLabel2: TLabel;
BmpFile: TBitmapImage;

procedure InitializeWizard4();
begin
ExtractTemporaryFile('3Tq4d6iRHl.bmp');

BmpFile:= TBitmapImage.Create(WizardForm);
BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\3Tq4d6iRHl.bmp'));
BmpFile.SetBounds(0, 0, 497, 320);
BmpFile.Stretch:= true
BmpFile.Parent:= WizardForm.WelcomePage;

with WizardForm do
begin
WelcomeLabel1.Hide;
WelcomeLabel2.hide;
end;

WelcomeLabel1:= TLabel.Create(WizardForm);
with WelcomeLabel1 do
begin
WelcomeLabel1.Alignment:=taCenter;
Left:= ScaleX(176);
Top:= ScaleY(66);
Width:= ScaleX(301);
Height:= ScaleY(71);
AutoSize:= false;
Transparent:= true;
WordWrap:= true;
Font.Name:='Tahoma'
Font.Size:= 12;
Font.Color:=ClWhite
Parent:= WizardForm.WelcomePage;
Caption:= WizardForm.WelcomeLabel1.Caption;
end;

WelcomeLabel2:=TLabel.Create(WizardForm);
with WelcomeLabel2 do
begin
WelcomeLabel2.Alignment:=taCenter;
Top:= ScaleY(136);
Left:= ScaleX(176);
Width:= ScaleX(301);
Height:= ScaleY(300);
AutoSize:= false;
WordWrap:= true;
Font.Color:=ClWhite
Font.Name:='Segoe UI'
Transparent:= true;
Parent:= WizardForm.WelcomePage;
Caption:= WizardForm.WelcomeLabel2.Caption;
end;
end;


читать дальше »

[Files]
Source: D:\Влад\Скрипты Inno Setup\d68840406b78.bmp; DestDir: {tmp}; Flags: dontcopy

[code]
var
LogoImage:TBitmapImage;
LogoLabel: TLabel;
LogoPanel: TPanel;

procedure LogoOnClick(Sender: TObject);
var ReturnCode: Integer;
begin
ShellExec('open', 'http://www.pirat.ca/forum/index.php', '', '', SW_SHOWNORMAL, ewNoWait, ReturnCode)
end;

procedure InitializeWizard3();
begin
ExtractTemporaryFile('d68840406b78.bmp');
LogoPanel := TPanel.Create(WizardForm);
with LogoPanel do
begin
Parent := WizardForm;
Left := ScaleX(5);
Top := ScaleY(320);
Width := ScaleX(165);
Height := ScaleY(35);
BevelOuter := bvNone;
end;

LogoImage := TBitmapImage.Create(WizardForm);
with LogoImage do
begin
Parent := LogoPanel;
Left := ScaleX(0);
Top := ScaleY(0);
AutoSize:=true;
ReplaceColor:=clFuchsia;
ReplaceWithColor:=clBtnFace;
Bitmap.LoadFromFile(ExpandConstant('{tmp}\d68840406b78.bmp'));
end;

LogoLabel := TLabel.Create(WizardForm);
with LogoLabel do
begin
Parent := LogoPanel;
Width := LogoPanel.Width;
Height := LogoPanel.Height;
Transparent:=True;
Cursor := crHand;
OnClick:=@LogoOnClick;
end;
end


читать дальше »

[code]
procedure InitializeWizard();
begin
with WizardForm do begin
with MainPanel do
Height := Height - 1;
with WizardSmallBitmapImage do begin
Left := 0;
Top := 0;
Height := 58; //Размер рисунка
Width := 497; //
end;
with PageNameLabel do begin
Font.Name := 'Tahoma'
Width := Width - 497; //Поставьте здесь значения на 0, если хотите вернуть текст
Left := Left + 497; //
end;
with PageDescriptionLabel do begin
Font.Name := 'Tahoma'
Width := Width - 497; //Поставьте здесь значения на 0, если хотите вернуть текст
Left := Left + 497; //
end;
end;
end;


и вот этот

читать дальше »

[Setup]
ExtraDiskSpaceRequired=4517483645
DiskSpanning=true
DiskSliceSize=1457664000
AppName=S.T.A.L.K.E.R. - Зов Припяти
AppVerName=S.T.A.L.K.E.R. - Зов Припяти v1.6.00
AppPublisher=CSKA-4empion
AppPublisherURL=http://www.pirat.ca
AppSupportURL=http://www.pirat.ca
AppUpdatesURL=http://www.pirat.ca
DefaultDirName={pf}\S.T.A.L.K.E.R. - Зов Припяти
DefaultGroupName=S.T.A.L.K.E.R. - Зов Припяти
OutputDir=D:\Влад\Инсталяторы Inno Setup\STALKER
OutputBaseFilename=setup
SetupIconFile=D:\Влад\Игры\S.T.A.L.K.E.R. - Зов Припяти\stalker_cop.ico
Compression=lzma/ultra64
SolidCompression=true
RestartIfNeededByRun=false
AllowCancelDuringInstall=true
DisableDirPage=false
EnableDirDoesntExistWarning=false
DirExistsWarning=yes
DisableProgramGroupPage=false
DisableReadyMemo=false
DisableReadyPage=false
AlwaysShowComponentsList=false
Uninstallable=true
DisableStartupPrompt=false
ShowComponentSizes=false
SlicesPerDisk=1
ReserveBytes=0
InfoBeforeFile=
LicenseFile=
PrivilegesRequired=none
InternalCompressLevel=ultra64
WizardSmallImageFile=D:\Влад\Скрипты Inno Setup\ec03e09c995c.bmp

[Languages]
Name: russian; MessagesFile: compiler:Default.isl

[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked

[Files]
Source: D:\Влад\Игры\S.T.A.L.K.E.R. - Зов Припяти\Stalker-COP.exe; DestDir: {app}; Flags: ignoreversion
Source: D:\Влад\Игры\S.T.A.L.K.E.R. - Зов Припяти\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
; ОТМЕТЬТЕ: Не используйте "Флажки: Проигнорировать версию" на любых общедоступных системных файлах

[Icons]
Name: {group}\Удалить игру; Filename: {uninstallexe}; WorkingDir: {app}
Name: {group}\S.T.A.L.K.E.R. - Зов Припяти; Filename: {app}\Stalker-COP.exe
Name: {userdesktop}\S.T.A.L.K.E.R. - Зов Припяти; Filename: {app}\Stalker-COP.exe; WorkingDir: {app}\; IconFilename: {app}\Stalker-COP.exe

[Run]
Filename: {src}\pack; Parameters: -x -y -s2 -d.; WorkingDir: {app}\; StatusMsg: Идет распаковка файлов игры...; Flags: shellexec waituntilterminated; Afterinstall: animateprogress
Filename: {app}\Stalker-COP.exe; Description: {cm:LaunchProgram,S.T.A.L.K.E.R. - Зов Припяти}; Flags: nowait postinstall skipifsilent

[UninstallDelete]
Name: {app}\*.*; Type: filesandordirs

[Registry]
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: string; ValueName: InstallCDKEY; ValueData:
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: string; ValueName: InstallLang; ValueData: ru
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: string; ValueName: InstallPath; ValueData: {app}; Flags: uninsdeletekey
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: string; ValueName: InstallSource; ValueData: {app}; Flags: uninsdeletekey
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: string; ValueName: InstallUserName; ValueData:
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: string; ValueName: InstallVers; ValueData: 1.6.00
Root: HKLM; SubKey: SOFTWARE\GSC Game World\STALKER-COP; ValueType: dword; ValueName: InstallPatchID; ValueData: $00002eda

Последний раз редактировалось 414895494, 04-10-2009 в 19:10.


Отправлено: 10:15, 04-10-2009 | #206


Новый участник


Сообщения: 41
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата user_123:
Подскажите, как сделать, чтобы выводился запрос на удаление подкаталога {app}\log (по умолчанию не должен удаляться)при деинсталляции приложения?

Код: Выделить весь код
function <...>(): Boolean;
begin
 if MsgBox(''+ ExpandConstant('{cm:removelogs}') +'', mbInformation, mb_YesNo) = idYes then
 begin
 <...>
 end;
end;
»
Отвечаю сам на свой вопрос.
Кое-что написал сам (по образцу (скачивал с вашего форума) некоторых скриптов):
Код: Выделить весь код
procedure InitializeUninstallProgressForm();
begin
  if MsgBox(CustomMessage('MyCustomMessage'), mbConfirmation, MB_YESNO) = IDYES then
    DelTree(ExpandConstant('{app}\subdir'),True,True,True)
end;
Вроде бы работает... Но есть некоторые трудности... Перед тем как удалить программу, надо завершить её процесс... У меня не получается реализовать это в деинсталляторе через секцию code по Вашим образцам, istask.dll распаковывается в папку деинсталлятора... компилятор сообщает о синтаксических ошибках (я с образца всё верно переписал и оптимизировал под свою прогрмму)... В инсталляторе я сделал, работает нормально... Пробовал для деинсталлятора прописать по образцу инсталлятора - скомпилировалось без проблем, но при запуске деинсталятора появилась ошибка...

Закрытие программы я реализовал так:
Код: Выделить весь код
[UninstallRun]
Filename: {sys}\taskkill.exe; Parameters: /f /im MyProg.exe /t; Flags: runhidden
Всё было бы замечательно, если бы это выполнялось ДО удаления {app}\subdir... Но после стандартного запроса об удалении программы.

Может, достаточно написать другую процедуру... подскажите, пожалуйста, какую...

Последний раз редактировалось user_123, 05-10-2009 в 19:00.


Отправлено: 00:30, 05-10-2009 | #207


Аватара для GrizzlyMK

Новый участник


Сообщения: 28
Благодарности: 3

Профиль | Отправить PM | Цитировать


Помогите сделать (Поиском пытался не чего не нашол или я просто нетак смотрел )
1. Как изменить размер окна инстолятора
2. Как селать чтобы фоновое изоброжение было на всех диологах

Отправлено: 17:42, 05-10-2009 | #208


Ветеран


Сообщения: 1133
Благодарности: 581

Профиль | Отправить PM | Цитировать


Цитата 414895494:
Объедините пожалуйста эти скрипты »
Попробуйте сначала использовать утилиту InnoSetup Script Joiner, ссылка в шапке темы.

Цитата user_123:
по Вашим образцам, istask.dll распаковывается в папку деинсталлятора... компилятор сообщает о синтаксических ошибках »
Пример
Код: Выделить весь код
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes

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

[Files]
; измените на своё место расположение dll'ки, у меня она расположена
; C:\Program Files\Inno Setup 5\Libraries\ISTask.dll
Source: compiler:Libraries\ISTask.dll; DestDir: {app}; Flags: ignoreversion
Source: compiler:Examples\MyProg.exe; DestDir: {app}; Flags: ignoreversion

[Run]
Filename: {app}\MyProg.exe; Description: Запустить программу My Program?; Flags: postinstall nowait skipifsilent

[Code]
// функции используемые при деинсталляции
// RunTask@{app}\ISTask.dll - название функции (в данном случае, если программа работает)
// и путь dll'ки где она расположена...
function RunTask(FileName: string; bFullpath: Boolean): Boolean;
  external 'RunTask@{app}\ISTask.dll stdcall delayload uninstallonly';
function KillTask(ExeFileName: string): Integer;
  external 'KillTask@{app}\ISTask.dll stdcall delayload uninstallonly';

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep = usUninstall then
  if RunTask('MyProg.exe', False) then
    begin
      // прячем форму
      UninstallProgressForm.Visible:= False;
      if MsgBox('Обнаружена запущенная программа My Program. Завершить?', mbConfirmation, MB_YESNO) = IDYES then
        begin
          KillTask('MyProg.exe');
          UnloadDll(ExpandConstant('{app}\ISTask.dll'));
          // показываем форму
          UninstallProgressForm.Visible:= True;
        end
      else
        begin
          MsgBox('Завершите работу программы My Program, затем снова запустите программу удаления.', mbInformation, MB_OK);
          UnloadDll(ExpandConstant('{app}\ISTask.dll'));
          Abort;
        end;
    end
  else
    begin
      UnloadDll(ExpandConstant('{app}\ISTask.dll'));
    end;
end;


Цитата GrizzlyMK:
Как изменить размер окна инстолятора »
WizardForm.ClientHeight - высота;
WizardForm.ClientWidth - ширина.
Цитата GrizzlyMK:
Как селать чтобы фоновое изоброжение было на всех диологах »
Посмотрите в архиве темы, этот вопрос уже поднимался.

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.


Отправлено: 19:40, 05-10-2009 | #209


Аватара для Krekerpro

Новый участник


Сообщения: 38
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток,хотелось бы узнать,как реализовать вот это ???

Отправлено: 21:04, 05-10-2009 | #210



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Inno Setup .:[все вопросы]:. Mchik Автоматическая установка приложений 1329 23-08-2009 20:13
[архив - Часть 2] AutoIt скрипты Vadikan AutoIt 985 21-01-2008 09:58
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
[Архив - Часть 1.1] AutoIt скрипты EgOrus AutoIt 335 04-02-2006 16:58




 
Переход