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

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

Автор: LamboL
Дата сообщения: 17.05.2014 23:44

Цитата:
Возможно-ли как-то добавить в секцию коде две процедуры "CurUninstallStepChanged"?
Не хочу объединять два скрипта.

Вот так:

Код: procedure CurUninstallStepChanged1(CurUninstallStep: TUninstallStep);
begin
...
end;

procedure CurUninstallStepChanged2(CurUninstallStep: TUninstallStep);
begin
...
end;

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
CurUninstallStepChanged1(CurUninstallStep);
CurUninstallStepChanged2(CurUninstallStep);
end;
Автор: AkroMen
Дата сообщения: 18.05.2014 00:51
LamboL
Благодарю,тогда без понятия.
Автор: tyumenik
Дата сообщения: 19.05.2014 08:19
Доброе утро, всем!!! Как скрывает страницу компонента??? — Заранее спасибо!!!



Автор: Tapas77789
Дата сообщения: 19.05.2014 10:13
tyumenik
function ShouldSkipPage(PageID: Integer): Boolean;
begin
Result:= (PageID = wpSelectComponents);
end;
Автор: tyumenik
Дата сообщения: 19.05.2014 12:55
Tapas77789, благодарен Вам!

И еще редактировать?
Автор: Tapas77789
Дата сообщения: 19.05.2014 14:56
tyumenik
В Расширенной версии inno есть пример Example_SysMenu.iss
[more=Пример пункта меню "О программе ..."]

Код:
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.

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

[code]
#define A = (Defined UNICODE) ? "W" : "A"

const
GWL_WNDPROC = -4;

WM_DESTROY = $0002;
WM_SYSCOMMAND = $0112;

function CallWindowProc(lpPrevWndFunc: Longint; hWnd: HWND; Msg: UINT; wParam, lParam: Longint): Longint; external 'CallWindowProc{#A}@user32.dll stdcall delayload';
function SetWindowLong(hWnd: HWND; nIndex: Integer; dwNewLong: Longint): Longint; external 'SetWindowLong{#A}@user32.dll stdcall delayload';

procedure AboutSetupClick;
begin
//здесь обрабатываем нажатие на пункт меню "О программе ..."
MsgBox('bla-bla-bla', mbInformation, MB_OK);
end;

function FProc(h:HWND;Msg,wParam,lParam:Longint):Longint;
begin
if (Msg = WM_SYSCOMMAND) and (wParam = 9999) then begin
Result := 0;
AboutSetupClick;
end else begin
if (Msg = WM_DESTROY) then SetWindowLong(WizardForm.Handle,GWL_WNDPROC,OldProc);
Result:=CallWindowProc(OldProc,h,Msg,wParam,lParam);
end;
end;

procedure InitializeWizard();
begin
OldProc:=SetWindowLong(WizardForm.Handle, GWL_WNDPROC, CallbackAddr('FProc'));
end;

procedure DeinitializeSetup();
begin
SetWindowLong(WizardForm.Handle, GWL_WNDPROC, OldProc);
end;
Автор: Irenis
Дата сообщения: 20.05.2014 11:36
Уважаемые форумчане! подскажите пожалуйста.
При компилировании происходит ошибка:

CallBack:=WrapMyCallback(@ProgressCallback,2);
Cancel:=0;
OveralPct:=0;

Ошибка в первой строчке, т.е тут: CallBack:=WrapMyCallback(@ProgressCallback,2);

С чем это может быть связано? Буду рада, если кто то подскажет))

Добавлено:
Напишу, что мне вообще нужно. Пытаюсь научиться создавать установщики. Сейчас пробую сделать установщик игры Panzar. Я совсем новичек в этом деле. В общем, читала различные уроки, которые нашла в инете. Скачала видео-урок, по примеру этого урока создала скрипт, вроде бы все делаю, как там сказано, но вот почему то при компиляции появляется ошибка. Возможно кто нибудь поможет разобраться что не так? Может у кого то есть возможность через TeamViewer все показать? Буду очень благодарна, так как каждый день пытаюсь создать этот установщик, но пока не получается.

Мой скайп irenna-85. Спасибо тому, кто откликнется))
Автор: vint56
Дата сообщения: 20.05.2014 15:40
Irenis выложи скрипт с файлами тогда тебе помогуд
Автор: Irenis
Дата сообщения: 20.05.2014 16:45

Цитата:
выложи скрипт с файлами

А файлы какие? Игру всю?
Скрипт :

http://files.mail.ru/F2687845E49541938EC808C6E37FB721
Автор: vint56
Дата сообщения: 20.05.2014 16:52
Irenis лутше используй версию ISDone0.6final
вот сылка http://rghost.ru/55431699
Автор: nortem
Дата сообщения: 23.05.2014 19:14
Помогите пожалуйста!!!! Напишите что и где добавить в скрипт чтобы у меня была страница с установкой программ и дополнительного по. Только все ясно а то я по чуть чуть все разгребаю и учусь. Выборочная установка не вариант. Нужна страница именно с по. И где скачивать скины?
Автор: Ring Frei
Дата сообщения: 23.05.2014 19:47
nortem, все в шапке.
Автор: nortem
Дата сообщения: 23.05.2014 20:01
? Хоть убей

Добавлено:
Помогите пожалуйста
Автор: vint56
Дата сообщения: 25.05.2014 12:52
nortem
[more=пример][Setup]
AppId={{E0893A09-90AE-4637-9A95-3DB44021BEBA}
AppName=Reaktor
AppVerName=Reaktor
DefaultDirName={pf}\Reaktor
DefaultGroupName=Reaktor
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes

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

[Files]
Source: {win}\help\*; DestDir: {app}\Files; Flags: external recursesubdirs createallsubdirs

[Icons]
Name: {group}\Reaktor; Filename: {app}\MyProg.exe
Name: {group}\{cm:UninstallProgram,Reaktor}; Filename: {uninstallexe}
Name: {userdesktop}\Reaktor; Filename: {app}\MyProg.exe; WorkingDir: {app}\; Tasks: icon; MinVersion: 0.0,5.0
[Run]
Filename: {src}\Redist\net.exe; Parameters: /qb; StatusMsg: Установка Microsoft .NET Framework 3.5...; Tasks: soft\nt; MinVersion: 0.0,5.0
Filename: {src}\Redist\Xlive\GFWLIVESetupStubMin.exe; Parameters: /nodotnet /q; StatusMsg: Установка Games for Windows - Live...; Tasks: soft\xl; MinVersion: 0.0,5.0
Filename: {src}\Redist\vcredist_x86.exe; Parameters: /q:a; StatusMsg: Установка Microsoft Visual C++ Redist...; Tasks: soft\vc; MinVersion: 0.0,5.0
Filename: {src}\Redist\DirectX\DXSETUP.exe; Parameters: /silent; StatusMsg: Обновление DirectX...; Tasks: soft\dx; MinVersion: 0.0,5.0
[Tasks]
Name: soft; Description: Дополнительное программное обеспечение:; MinVersion: 0.0,5.0
Name: soft\nt; Description: Установить Microsoft .NET Framework 3.5 (требуется Интернет подключение); MinVersion: 0.0,5.0
Name: soft\xl; Description: Установить Games for Windows - Live; MinVersion: 0.0,5.0
Name: soft\vc; Description: Установить Microsoft Visual C++ Redist; MinVersion: 0.0,5.0
Name: soft\dx; Description: Обновить DirectX; MinVersion: 0.0,5.0
Name: icon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; MinVersion: 0.0,5.0[/more]
Автор: tyumenik
Дата сообщения: 25.05.2014 16:15
Добрый день, всем! Как прозрачность?
Автор: YURSHAT
Дата сообщения: 25.05.2014 16:42
tyumenik

Цитата:
Добрый день, всем! Как прозрачность?

[more=Пример]
Код: var
PageNameLabel, PageDescriptionLabel: TLabel;

procedure InitializeWizard();
begin
with WizardForm do
begin
WizardSmallBitmapImage.Left := 0;
WizardSmallBitmapImage.Width := WizardForm.MainPanel.Width;
PageNameLabel.Hide;
PageDescriptionLabel.Hide;
end;

with WizardForm.PageNameLabel do
begin
PageNameLabel := TLabel.Create(WizardForm);
PageNameLabel.Parent := WizardForm.MainPanel;
PageNameLabel.SetBounds(Left, Top, Width, Height);
PageNameLabel.Transparent := True;
PageNameLabel.AutoSize := AutoSize;
PageNameLabel.WordWrap := WordWrap;
PageNameLabel.Font := Font;
PageNameLabel.Font.Color := clWhite;
end;

with WizardForm.PageDescriptionLabel do
begin
PageDescriptionLabel := TLabel.Create(WizardForm);
PageDescriptionLabel.Parent := WizardForm.MainPanel;
PageDescriptionLabel.SetBounds(Left, Top, Width, Height);
PageDescriptionLabel.Transparent := True;
PageDescriptionLabel.AutoSize := AutoSize;
PageDescriptionLabel.WordWrap := WordWrap;
PageDescriptionLabel.Font := Font;
PageDescriptionLabel.Font.Color := clWhite;
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
PageNameLabel.Caption := WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption := WizardForm.PageDescriptionLabel.Caption;
end;
Автор: tyumenik
Дата сообщения: 25.05.2014 17:45
YURSHAT, большое спасибо и еще также прозрачность?
Автор: Habib2302
Дата сообщения: 27.05.2014 19:52
всем привет. дайте пожалуйста скрипт на распаковку запароленных arc архивов. (не весь isdone т.е без всяких оформлений инстайла, без лишних файлов и т.д)
Автор: sergey3695
Дата сообщения: 27.05.2014 21:14
Habib2302 я тебе на OsZone вырезку из справки кинул. Там есть все.
Автор: Habib2302
Дата сообщения: 27.05.2014 21:49
sergey3695
прочитал. а сам скрипт можно.
Автор: oosppa
Дата сообщения: 27.05.2014 22:43
Всем привет. Подскажите пожалуйста как сделать, чтобы вверху окна инсталлятора (стандартного вида) была картинка во всю ширину окна (497х58)? Без всякого текста только картинка. Кроме первой и последней страниц.

upd: Как вставить картинку разобрался. Подскажите как убрать текст (он отображается поверх картинки)?
Автор: Habib2302
Дата сообщения: 27.05.2014 23:52
oosppa

Код: procedure InitializeWizard();
begin
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
end;
Автор: oosppa
Дата сообщения: 28.05.2014 00:04
Habib2302
Спасибо большое )
Автор: Etasch
Дата сообщения: 29.05.2014 19:41
Вот я делаю инсталятор и потом устанавливаю игру, но файлы в игре которые стояли "Только для чтения" снялись. можно ли как то защитить эти файлы чтобы после установки они так же оставались такими же "Только для чтения" ?
Автор: painter7
Дата сообщения: 29.05.2014 20:15
Etasch,

Код: Source: "file\test.exe"; DestDir: "{app}"; DestName: "test.exe"; Flags: uninsremovereadonly; Attribs: readonly
Автор: Habib2302
Дата сообщения: 29.05.2014 22:47
я хочу спросить. во время распаковки arc архивов я нажимаю отмена, но распаковка не прекращается. это так должно быть или нет?и и в FileNameLabel не отображается список извлекаемых фалов из инсталлятора. как вернуть?
[more]

Код:
; Скрипт создан через Мастер Inno Setup Script.
; ИСПОЛЬЗУЙТЕ ДОКУМЕНТАЦИЮ ДЛЯ ПОДРОБНОСТЕЙ ИСПОЛЬЗОВАНИЯ INNO SETUP!

#define NeedSize "5000000000"

#define NeedMem 512

#define SecondProgressBar

#define MyAppName "ABBYY Lingvo х5 Professional"
#define MyAppVersion "15.0.826.26"
#define MyAppURL "https://href.li/?http://www.abbyy.ru/lingvo-windows/20languages_pro/"
#include "WinTB.iss"
#include "botva2.iss"

[Setup]
; Примечание: Значение AppId идентифицирует это приложение.
; Не используйте одно и тоже значение в разных установках.
; (Для генерации значения GUID, нажмите Инструменты | Генерация GUID.)
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={tmp}\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=true
OutputBaseFilename={#MyAppName} {#MyAppVersion} Lite RePack by Xabib
SetupIconFile=ico.ico
Compression=lzma/Ultra64
SolidCompression=true
InternalCompressLevel=Ultra64
DiskSpanning=false
DiskSliceSize=736000000
ShowLanguageDialog=yes
SlicesPerDisk=4
RawDataResource=Botva:botva2.dll|b2p:b2p.dll|Logo:logo.png|bPic:bPic.png|LiPic:LiPic.png|aPic:aPic.png
AppModifyPath={app}
VersionInfoProductName={#MyAppName}
DirExistsWarning=no
AppendDefaultDirName=false
AppendDefaultGroupName=false
DisableReadyPage=true
AppID={#MyAppName}
VersionInfoDescription={#MyAppName} RePack by Xabib
AppCopyright=Xabib © 2014
VersionInfoVersion={#MyAppVersion}
VersionInfoProductVersion={#MyAppVersion}
VersionInfoCopyright=Xabib © 2014
DisableFinishedPage=false
UninstallDisplayName={#MyAppName}
ComponentsListTVStyle=true
ShowComponentSizes=false
Uninstallable=false
DisableProgramGroupPage=yes
#ifdef NeedSize
ExtraDiskSpaceRequired=0
#endif
DisableDirPage=yes

[Languages]
Name: "Russian"; MessagesFile: "Russian.isl"

[Files]
Source: WinTB.dll; Flags: dontcopy;
Source: C:\Windows\Fonts\*; DestDir: {app}\1111;
Source: Include\English.ini; DestDir: {tmp}; Flags: dontcopy
Source: Include\unarc.dll; DestDir: {tmp}; Flags: dontcopy
Source: ISDone.dll; DestDir: {tmp}; Flags: dontcopy
#ifdef records
Source: records.inf; DestDir: {tmp}; Flags: dontcopy
#endif
#ifdef facompress
Source: Include\facompress.dll; DestDir: {tmp}; Flags: dontcopy
#endif

[CustomMessages]
Russian.ExtractedFile=Распаковка файлов...
Russian.Extracted=Распаковка архивов...
Russian.CancelButton=Отменить распаковку
Russian.Error=Ошибка распаковки!
Russian.ElapsedTime=Прошло:
Russian.RemainingTime=Осталось времени:
Russian.EstimatedTime=Всего:
Russian.AllElapsedTime=Время установки:

[Run]
Filename: {app}\Setup.exe; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait skipifsilent PostInstall Unchecked;

[ Code]
#ifdef UNICODE
#define A "W"
#else
#define A "A"
#endif

const
///////////////////////////////////Относится к лого и изображениям мастера
RT_RCDATA = 10;
LOAD_LIBRARY_AS_DATAFILE = $2;

var
///////////////////////////////////Лого и изображения
lPLogo, bPicHandle, bPicHandle2, lPicHandle: THandle;
BtnImage: TBitmapImage;
///////////////////////////////////////////
iInitialize: Boolean;
LabelPct1,LabelCurrFileName: TLabel;
ISDoneProgressBar1: TNewProgressBar;
ISDoneCancel:integer;
ISDoneError:boolean;

type
TCallback = function (OveralPct,CurrentPct: integer;CurrentFile,TimeStr1,TimeStr2,TimeStr3:PAnsiChar): longword;

function ISArcExtract(CurComponent:Cardinal; PctOfTotal:double; InName, OutPath, ExtractedPath: AnsiString; DeleteInFile:boolean; Password, CfgFile, WorkPath: AnsiString; ExtractPCF: boolean ):boolean; external 'ISArcExtract@files:ISDone.dll stdcall delayload';
function Exec2 (FileName, Param: PAnsiChar;Show:boolean):boolean; external 'Exec2@files:ISDone.dll stdcall delayload';

function ISDoneInit(RecordFileName:AnsiString; TimeType,Comp1,Comp2,Comp3:Cardinal; WinHandle, NeededMem:longint; callback:TCallback):boolean; external 'ISDoneInit@files:ISDone.dll stdcall';
function ISDoneStop:boolean; external 'ISDoneStop@files:ISDone.dll stdcall';
function ChangeLanguage(Language:AnsiString):boolean; external 'ChangeLanguage@files:ISDone.dll stdcall delayload';
function SuspendProc:boolean; external 'SuspendProc@files:ISDone.dll stdcall';
function ResumeProc:boolean; external 'ResumeProc@files:ISDone.dll stdcall';

function ProgressCallback(OveralPct,CurrentPct: integer;CurrentFile,TimeStr1,TimeStr2,TimeStr3:PAnsiChar): longword;
begin
if OveralPct<=1000 then ISDoneProgressBar1.Position := OveralPct;
LabelPct1.Caption := ExpandConstant('{cm:Extracted} ');
LabelCurrFileName.Caption:=MinimizePathName(CurrentFile, LabelCurrFileName.Font, ScaleX(417));
Result := ISDoneCancel;
end;

///////////////////////////////////Ресурсы(относится к лого и изображениям мастера)
function GetFromRes(const ResName, SaveFileName: String): Boolean;
var
lResStream: TResourceStream;
begin
lResStream := TResourceStream.Create(HInstance, ResName, RT_RCDATA);
try
lResStream.SaveToFile(AddBackslash(ExpandConstant('{tmp}')) + SaveFileName);
finally
lResStream.Free;
Result := FileExists(AddBackslash(ExpandConstant('{tmp}')) + SaveFileName);
end;
end;

function OnShouldSkipPage(Sender: TWizardPage): Boolean;
begin
if WizardForm.ComponentsList.Items.Count > 0 then WizardForm.Tag:= 1; // отображаются страницы выбора папки и компонентов
end;

procedure InitializeWizard;
begin
PageFromID(wpSelectDir).OnShouldSkipPage:= @OnShouldSkipPage
with WizardForm do
begin

///////////////////////////////////Логотип и изображения мастера
iInitialize := True;
if GetFromRes('_IS_BOTVA', 'botva2.dll') and GetFromRes('_IS_B2P', 'b2p.dll') and GetFromRes('_IS_LOGO', 'logo.png') and GetFromRes('_IS_BPIC', 'bPic.png') and GetFromRes('_IS_LIPIC', 'LiPic.png') and GetFromRes('_IS_APIC', 'aPic.png') then
begin
///////////////////////////////////Изображения
bPicHandle := ImgLoad(WelcomePage.Handle, ExpandConstant('{tmp}\aPic.png'), WizardBitmapImage.Left, WizardBitmapImage.Top, WizardBitmapImage.Width, WizardBitmapImage.Height, True, True);
WizardBitmapImage.Hide;
ImgSetVisibility(bPicHandle, True);
ImgApplyChanges(WelcomePage.Handle);

bPicHandle := ImgLoad(FinishedPage.Handle, ExpandConstant('{tmp}\bPic.png'), WizardBitmapImage2.Left, WizardBitmapImage2.Top, WizardBitmapImage2.Width, WizardBitmapImage2.Height, True, True);
WizardBitmapImage2.Hide;
ImgSetVisibility(bPicHandle, True);
ImgApplyChanges(FinishedPage.Handle);

lPicHandle := ImgLoad(MainPanel.Handle, ExpandConstant('{tmp}\LiPic.png'), WizardSmallBitmapImage.Left, WizardSmallBitmapImage.Top, WizardSmallBitmapImage.Width, WizardSmallBitmapImage.Height, True, True);
WizardSmallBitmapImage.Hide;
DiskSpaceLabel.Hide;
ComponentsDiskSpaceLabel.Hide;
ImgSetVisibility(lPicHandle, True);
ImgApplyChanges(MainPanel.Handle);
////////////////////////////////////////////

///////////////////////////////////Логотип

lPLogo:= ImgLoad(WizardForm.Handle, ExpandConstant('{tmp}\logo.png'), ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40), True, True);
ImgApplyChanges(WizardForm.Handle);
end;

///////////////////////////////////WinTB
ExtractTemporaryFile('WinTB.dll');
SetTaskBarProgressValue(0, 60);
SetTaskBarProgressState(0, TBPF_ERROR);
TaskBarV10(MainForm.Handle, WizardForm.Handle, false, false, 0, 0, _m_);
//////////////////////////////////////

with TLabel.Create(WizardForm) do
begin
Parent:=WizardForm;
AutoSize:=False;
Transparent:= true;
SetBounds(ScaleX(20), ScaleY(318), ScaleX(124), ScaleY(40));
end;
end;
end;

procedure HideControls;
begin
ISDoneProgressBar1.Hide;
LabelPct1.Hide;
LabelCurrFileName.Hide;
end;

procedure CreateControls;
var PBTop:integer;
begin
PBTop:=ScaleY(70);
ISDoneProgressBar1 := TNewProgressBar.Create(WizardForm);
with ISDoneProgressBar1 do begin
Parent := WizardForm.InstallingPage;
Height := WizardForm.ProgressGauge.Height;
Left := ScaleX(0);
Top := PBTop;
Width := ScaleX(417);
Max := 1000;
end;
LabelPct1 := TLabel.Create(WizardForm);
with LabelPct1 do begin
Parent := WizardForm.InstallingPage;
AutoSize := False;
Left := ScaleX(0);
Top := ScaleY(30);
Width := ScaleX(417);
end;
LabelCurrFileName := TLabel.Create(WizardForm);
with LabelCurrFileName do begin
Parent := WizardForm.InstallingPage;
AutoSize := False;
Width := ScaleX(417);
Left := ScaleX(0);
Top := ScaleY(46);
end;
end;

Procedure CurPageChanged(CurPageID: Integer);
Begin
Case CurPageID of
wpSelectTasks:
begin
WizardForm.NextButton.Caption:= SetupMessage(msgButtonInstall);
end;
end;
if (CurPageID = wpFinished) and ISDoneError then
end;

function CheckError:boolean;
begin
result:= not ISDoneError;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssInstall then begin //Если необходимо, можно поменять на ssPostInstall
WizardForm.ProgressGauge.Hide;
CreateControls;
WizardForm.StatusLabel.Caption:=ExpandConstant('{cm:ExtractedFile}');
ISDoneCancel:=0;

// Распаковка всех необходимых файлов в папку {tmp}.

ExtractTemporaryFile('unarc.dll');

#ifdef facompress
ExtractTemporaryFile('facompress.dll'); //ускоряет распаковку .arc архивов.
#endif
#ifdef records
ExtractTemporaryFile('records.inf');
#endif
ExtractTemporaryFile('English.ini');

ISDoneError:=true;
if ISDoneInit(ExpandConstant('{src}\records.inf'), $F777, 0, 0, 0, MainForm.Handle, {#NeedMem}, @ProgressCallback) then begin
repeat
if not ISArcExtract (0, 0, ExpandConstant('{src}\ABBYY_Lingvo_X5.xabib'), ExpandConstant('{app}'), '', false, 'khrushchev194023', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), false) then break;
ISDoneError:=false;
until true;
ISDoneStop;
end;
HideControls;
WizardForm.CancelButton.Visible:=true;
WizardForm.CancelButton.Enabled:=false;
end;
if (CurStep=ssPostInstall) and ISDoneError then begin
Exec2(ExpandConstant('{uninstallexe}'), '/VERYSILENT', false);
end;
end;

procedure DeinitializeSetup();
begin
if iInitialize then
begin
gdipShutdown;
TaskBarDestroy;
end;
end;


Автор: log1stable
Дата сообщения: 29.05.2014 23:27
Habib2302, процедуры отмены я вообще не вижу. К кнопке привяжи вызов SuspendProc, ISDoneStop, ResumeProc.
Автор: Habib2302
Дата сообщения: 29.05.2014 23:40
log1stable
есть там процедура. после этой строки

Код: if not ISArcExtract (0, 0, ExpandConstant('{src}\ABBYY_Lingvo_X5.xabib'), ExpandConstant('{app}'), '', false, 'khrushchev194023', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), false) then break;
Автор: vint56
Дата сообщения: 30.05.2014 10:32
Habib2302 нету у тебя там процедуры отмены


Автор: Habib2302
Дата сообщения: 30.05.2014 11:52
vint56
поделитесь кодом на процедуру отмены

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758

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


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