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

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

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

Аватара для El Sanchez

Ветеран


Contributor


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


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

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


Изменения
Автор: El Sanchez
Дата: 22-10-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:

Показать/скрыть: Ссылки на примеры скриптов:

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

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

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

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

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

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

  • RegExporter - Фриварная утилита для экспорта реестра и конвертации файлов *.reg и *.ini в инсталляционные скрипты Inno Setup и NSIS.
    Последняя версия: 1.2.0 [23.09.2014] - Скачать;



Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

Скрипты Inno Setup. Помощь и советы [часть 6]
Скрипты Inno Setup. Помощь и советы [часть 7]

Отправлено: 08:52, 02-02-2015

 

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


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

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


парни как убрать страницу установить , что бы продолжалась автоматом установка

Последний раз редактировалось pollipen, 23-08-2017 в 13:24.


Отправлено: 13:02, 23-08-2017 | #2041



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

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


Аватара для boss911

Alien


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

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


Цитата pollipen:
убрать страницу установить »
Если я правильно понял, то речь идет о странице ReadyPage.
Код: Выделить весь код
[Setup]
DisableReadyPage=yes
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:28, 23-08-2017 | #2042


Аватара для ZVSRus

Старожил


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

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


pollipen
Скрытый текст
Код: Выделить весь код
[Setup]
 AppName=My Application
 AppVersion=1.5
 DefaultDirName={pf}\My Application

[Files]
 Source: "compiler:\*"; DestDir: "{app}"; Flags: ignoreversion

[Code_]
procedure CurPageChanged(CurPageID: Integer);
begin                                                                        
  case CurPageID of
    wpSelectDir:                                                            
    WizardForm.NextButton.Caption:= 'Установить'                            
  end;                                                                       
end;                                                                        

function ShouldSkipPage(PageID: Integer): Boolean;                                    
begin
  if (PageID = 8) or(PageID = 10) then
  Result:= True;                                                                      
end;

-------
Inno Setup 5.5.1.ee2 Ultra ANSI Unicode

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:02, 23-08-2017 | #2043


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


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

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


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

HTML код: Выделить весь код
#define MyAppName "My Program" #define MyAppVersion "1.5" #define MyAppPublisher "My Company, Inc." #define MyAppURL "http://www.example.com/" #define MyAppExeName "MyProg.exe" [Setup] AppId={{820F943F-D4F5-47B0-A3E3-B4568C5A07EC} AppName={#MyAppName} AppVersion={#MyAppVersion} ;AppVerName={#MyAppName} {#MyAppVersion} AppPublisher={#MyAppPublisher} AppPublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={pf}\{#MyAppName} DefaultGroupName={#MyAppName} OutputBaseFilename=setup Compression=lzma SolidCompression=yes DisableWelcomePage=yes DisableReadyPage=True DisableReadyMemo=True DisableFinishedPage=True [Languages] Name: "english"; MessagesFile: "compiler:Default.isl" [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked [Files] Source: "C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "C:\Users\ww\Desktop\Soft\DirectX.exe"; DestDir: "{tmp}"; Flags: ignoreversion [Icons] Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon [Run] Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent [code] function InitializeSetup(): Boolean; var ErrorCode: Integer; begin if not FileExists(ExpandConstant('{tmp}\DirectX.exe')) then ExtractTemporaryFile('DirectX.exe'); Exec(ExpandConstant('{tmp}\DirectX.exe'), '', '', SW_Hide, ewWaitUntilTerminated , ErrorCode); result:=True; end; #define A = (Defined UNICODE) ? "W" : "A" const WM_USER = $0400; PBM_SETPOS = (WM_USER + 2); GWL_WNDPROC = (-4); GWL_USERDATA = (-21); function GetWindowLong(hWnd: HWND; nIndex: Integer): Longint; external 'GetWindowLong{#A}@user32.dll stdcall'; function SetWindowLong(hWnd: HWND; nIndex: Integer; dwNewLong: Longint): Longint; external 'SetWindowLong{#A}@user32.dll stdcall'; function CallWindowProc(lpPrevWndFunc: Longint; hWnd: HWND; Msg: UINT; wParam: Longint; lParam: Longint): Longint; external 'CallWindowProc{#A}@user32.dll stdcall'; function MulDiv(nNumber, nNumerator, nDenominator: Integer): Integer; external 'MulDiv@kernel32.dll stdcall'; var InstPercentLabel: TLabel; /////////////////////////////// procedure CreateInstallingPage; begin { InstPercentLabel } InstPercentLabel := TLabel.Create(WizardForm); with InstPercentLabel do begin Parent := WizardForm.ProgressGauge; Align := alClient; Alignment := taCenter; Layout := tlCenter; Transparent := True; end; end; /////////////////////////////////////////////////////////////////////////////////////// function ProgressGaugeWndProc(hWnd: HWND; Msg: UINT; wParam, lParam: Longint): Longint; begin case Msg of PBM_SETPOS: begin Result := CallWindowProc(GetWindowLong(hWnd, GWL_USERDATA), hWnd, Msg, wParam, lParam); with WizardForm.ProgressGauge do InstPercentLabel.Caption := Format('%d %%', [MulDiv(Position, 100, Max)]); end; else Result := CallWindowProc(GetWindowLong(hWnd, GWL_USERDATA), hWnd, Msg, wParam, lParam); end; end; /////////////////////////// procedure SubclassControls; begin { ProgressGauge } with WizardForm.ProgressGauge do begin if GetWindowLong(Handle, GWL_USERDATA) = 0 then SetWindowLong(Handle, GWL_USERDATA, SetWindowLong(Handle, GWL_WNDPROC, CallbackAddr('ProgressGaugeWndProc'))); end; end; /////////////////////////// procedure InitializeWizard3; begin CreateInstallingPage; SubclassControls; end; ///////////////////////////// procedure UnSubclassControls; begin { ProgressGauge } with WizardForm.ProgressGauge do begin if GetWindowLong(Handle, GWL_USERDATA) > 0 then SetWindowLong(Handle, GWL_WNDPROC, GetWindowLong(Handle, GWL_USERDATA)); end; end; procedure InitializeWizard1(); begin WizardForm.DirBrowseButton.Hide; with WizardForm.DirEdit do begin Width := ScaleX(417); AutoSelect := False; Enabled := False; end; end; function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload'; procedure InitializeWizard2(); begin //Выносим кнопку "Отмена" на передний план WizardForm.CancelButton.BringToFront; WizardForm.Bevel1.Hide; end; procedure CurPageChanged2(CurPageID: Integer); begin if CurPageID=wpInstalling then begin WizardForm.BorderStyle:=bsDialog; WizardForm.MainPanel.Visible:=False; WizardForm.Width:=ScaleX(320); WizardForm.Height:=ScaleY(91); WizardForm.InnerNotebook.Left:=ScaleX(7); WizardForm.InnerNotebook.Top:=ScaleY(7); WizardForm.InnerNotebook.Width:=ScaleX(300); WizardForm.StatusLabel.Left:=ScaleX(0); WizardForm.StatusLabel.Top:=ScaleY(0); WizardForm.StatusLabel.Width:=WizardForm.InnerNotebook.Width; WizardForm.FileNameLabel.Left:=ScaleX(0); WizardForm.FileNameLabel.Top:=ScaleY(17); WizardForm.FileNameLabel.Width:=WizardForm.InnerNotebook.Width; WizardForm.ProgressGauge.Top:=ScaleY(15); WizardForm.ProgressGauge.Left:=ScaleX(0); WizardForm.ProgressGauge.Width:=WizardForm.InnerNotebook.Width; WizardForm.CancelButton.Left:=ScaleX(122); WizardForm.CancelButton.Top:=ScaleY(70); WizardForm.Left:=GetSystemMetrics(16)-ScaleX(325); WizardForm.Top:=GetSystemMetrics(17)-ScaleX(68); end; if CurPageID=wpFinished then begin WizardForm.Width:=502;{Размер окна по горизонтали} WizardForm.Height:=392;{Размер окна по вертикали} WizardForm.Position:=poScreenCenter; {Возврат в исходное состояние} end; end; //////////////////////// var Label1: TLabel; procedure btnOnClick(Sender: TObject); var rcode: integer; begin ShellExec('open','http://forum.oszone.net','', '', SW_SHOW, ewNoWait, rCode); end; procedure btnOnClick2(Sender: TObject); begin Label1.Font.Color := clred; end; procedure btnOnClick3(Sender: TObject); begin Label1.Font.Color := clBlue; end; procedure InitializeWizard4(); begin Label1 := TLabel.Create(WizardForm); with Label1 do begin Parent := WizardForm; Cursor := crHand; Caption := 'Дополнительный софт'; Font.Color := clBlue; Font.Height := -16; Font.Name := 'Tahoma'; Font.Style := [fsUnderline]; ParentFont := False; Transparent := True; OnClick := @btnOnClick; OnMouseEnter := @btnOnClick2; OnMouseLeave := @btnOnClick3; Left := ScaleX(8); Top := ScaleY(327); Width := ScaleX(153); Height := ScaleY(19); end; end; ///////////////// procedure CurPageChanged1(CurPageID: Integer); begin case CurPageID of wpSelectDir: WizardForm.NextButton.Caption:= 'Установить' end; end; function ShouldSkipPage(PageID: Integer): Boolean; begin if (PageID = 8) or(PageID = 10) then Result:= True; end; procedure InitializeWizard(); begin InitializeWizard1(); InitializeWizard2(); InitializeWizard3; InitializeWizard4(); end; //////////////////////////// procedure DeinitializeSetup; begin if ExpandConstant('{wizardhwnd}') = '0' then Exit; UnSubclassControls; end; procedure CurPageChanged(CurPageID: Integer); begin CurPageChanged1(CurPageID) CurPageChanged2(CurPageID) end


Последний раз редактировалось pollipen, 26-08-2017 в 08:38.


Отправлено: 16:16, 25-08-2017 | #2044


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


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

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


парни как запустить .msi файл из установщика, а то пишет что не является приложением win 32

Последний раз редактировалось pollipen, 26-08-2017 в 11:14.


Отправлено: 10:35, 26-08-2017 | #2045


Аватара для R.i.m.s.k.y.

Ветеран


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

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


pollipen, http://www.jrsoftware.org/iskb.php?msi

Код: Выделить весь код
[Files]
Source: "Your-MSI-File.msi"; DestDir: "{tmp}"

[Run]
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\Your-MSI-File.msi"""

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:35, 26-08-2017 | #2046


SHVtYW4=


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

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


Цитата pollipen:
надо чтобы тихо продолжалась установка без пользователя »
Судя по поведению, Вам необходимо чтоб следовало скрытое выполнение DirectX.
Код: Выделить весь код
 Exec(ExpandConstant('{tmp}\DirectX.exe'), '/q', '', SW_Hide, ewWaitUntilTerminated , ErrorCode);

Цитата pollipen:
поправит »
Скрытый текст

Поправил:
Код: Выделить весь код
#define MyAppName "My Program"
#define MyAppVersion "1.5"
#define MyAppPublisher "My Company, Inc."
#define MyAppURL "http://www.example.com/"
#define MyAppExeName "MyProg.exe"

[Setup]
AppId={{820F943F-D4F5-47B0-A3E3-B4568C5A07EC}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DefaultGroupName={#MyAppName}
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes
DisableWelcomePage=yes
DisableReadyPage=True
DisableReadyMemo=True
DisableFinishedPage=True

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

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

[Files]
Source: "C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\ww\Desktop\Soft\DirectX.exe"; DestDir: "{tmp}"; Flags: ignoreversion

[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon

[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent

[Code]
function InitializeSetup(): Boolean;
var
  ErrorCode: Integer;
begin
  if not FileExists(ExpandConstant('{tmp}\DirectX.exe')) then ExtractTemporaryFile('DirectX.exe');
  Exec(ExpandConstant('{tmp}\DirectX.exe'), '/q', '', SW_Hide, ewWaitUntilTerminated , ErrorCode);
  result:=True;
end;

#define A = (Defined UNICODE) ? "W" : "A"
const
    WM_USER = $0400;
    PBM_SETPOS = (WM_USER + 2);
    GWL_WNDPROC = (-4);
    GWL_USERDATA = (-21);

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

var
    InstPercentLabel: TLabel;

///////////////////////////////
procedure CreateInstallingPage;
begin
    { InstPercentLabel }
    InstPercentLabel := TLabel.Create(WizardForm);
    with InstPercentLabel do
    begin
        Parent := WizardForm.ProgressGauge;
        Align := alClient;
        Alignment := taCenter;
        Layout := tlCenter;
        Transparent := True;
    end;
end;

///////////////////////////////////////////////////////////////////////////////////////
function ProgressGaugeWndProc(hWnd: HWND; Msg: UINT; wParam, lParam: Longint): Longint;
begin
    case Msg of
        PBM_SETPOS:
            begin
                Result := CallWindowProc(GetWindowLong(hWnd, GWL_USERDATA), hWnd, Msg, wParam, lParam);
                with WizardForm.ProgressGauge do
                    InstPercentLabel.Caption := Format('%d %%', [MulDiv(Position, 100, Max)]);
            end;
    else
        Result := CallWindowProc(GetWindowLong(hWnd, GWL_USERDATA), hWnd, Msg, wParam, lParam);
    end;
end;

///////////////////////////
procedure SubclassControls;
begin
    { ProgressGauge }
    with WizardForm.ProgressGauge do
    begin
        if GetWindowLong(Handle, GWL_USERDATA) = 0 then
            SetWindowLong(Handle, GWL_USERDATA, SetWindowLong(Handle, GWL_WNDPROC, CallbackAddr('ProgressGaugeWndProc')));
    end;
end;


/////////////////////////////
procedure UnSubclassControls;
begin
    { ProgressGauge }
    with WizardForm.ProgressGauge do
    begin
        if GetWindowLong(Handle, GWL_USERDATA) > 0 then
            SetWindowLong(Handle, GWL_WNDPROC, GetWindowLong(Handle, GWL_USERDATA));
    end;
end;

function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload';


procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID=wpInstalling then
begin
WizardForm.BorderStyle:=bsDialog;
WizardForm.MainPanel.Visible:=False;
WizardForm.Width:=ScaleX(320);
WizardForm.Height:=ScaleY(91);
WizardForm.InnerNotebook.Left:=ScaleX(7);
WizardForm.InnerNotebook.Top:=ScaleY(7);
WizardForm.InnerNotebook.Width:=ScaleX(300);
WizardForm.StatusLabel.Left:=ScaleX(0);
WizardForm.StatusLabel.Top:=ScaleY(0);
WizardForm.StatusLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.FileNameLabel.Left:=ScaleX(0);
WizardForm.FileNameLabel.Top:=ScaleY(17);
WizardForm.FileNameLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.ProgressGauge.Top:=ScaleY(15);
WizardForm.ProgressGauge.Left:=ScaleX(0);
WizardForm.ProgressGauge.Width:=WizardForm.InnerNotebook.Width;
WizardForm.CancelButton.Left:=ScaleX(122);
WizardForm.CancelButton.Top:=ScaleY(70);
WizardForm.Left:=GetSystemMetrics(16)-ScaleX(325);
WizardForm.Top:=GetSystemMetrics(17)-ScaleX(68);
end;

  case CurPageID of
    wpSelectDir:
    WizardForm.NextButton.Caption:= 'Установить'
  end;

if CurPageID=wpFinished
then
  begin
    WizardForm.Width:=502;{Размер окна по горизонтали}
    WizardForm.Height:=392;{Размер окна по вертикали}
    WizardForm.Position:=poScreenCenter; {Возврат в исходное состояние}
  end;
end;



////////////////////////
var
  Label1: TLabel;

procedure btnOnClick(Sender: TObject);
var
 rcode: integer;
begin
    ShellExec('open','http://forum.oszone.net','', '', SW_SHOW, ewNoWait, rCode);
end;

procedure btnOnClick2(Sender: TObject);
begin
    Label1.Font.Color := clred;
end;

procedure btnOnClick3(Sender: TObject);
begin
    Label1.Font.Color := clBlue;
end;


/////////////////
procedure InitializeWizard();
begin
//Выносим кнопку "Отмена" на передний план
WizardForm.CancelButton.BringToFront;

// *****
WizardForm.Bevel1.Hide;

// *****
WizardForm.DirBrowseButton.Hide;

// *****
with WizardForm.DirEdit do
  begin
    Width := ScaleX(417);
    AutoSelect := False;
    Enabled := False;
  end;

// *****
  Label1 := TLabel.Create(WizardForm);
  with Label1 do
  begin
    Parent := WizardForm;
    Cursor := crHand;
    Caption := 'Дополнительный софт';
    Font.Color := clBlue;
    Font.Height := -16;
    Font.Name := 'Tahoma';
    Font.Style := [fsUnderline];
    ParentFont := False;
    Transparent := True;
    OnClick := @btnOnClick;
    OnMouseEnter := @btnOnClick2;
    OnMouseLeave := @btnOnClick3;
    SetBounds(ScaleX(8), ScaleY(327), Width, ScaleY(19));
  end;
/////////////////


///////////////////////////
    CreateInstallingPage;
    SubclassControls;
/////////////////////////////
end;


function ShouldSkipPage(PageID: Integer): Boolean;
begin
  if (PageID = 8) or(PageID = 10) then
  Result:= True;
end;


////////////////////////////
procedure DeinitializeSetup;
begin
    if ExpandConstant('{wizardhwnd}') = '0' then
        Exit;
    UnSubclassControls;
end;

Отправлено: 14:13, 26-08-2017 | #2047


Аватара для ZVSRus

Старожил


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

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


pollipen
Цитата:
чтобы тихо продолжалась установка без пользователя
Если имелось ввиду что бы не показывалась страница SelectTasksPage (следующая страница за той на которой кнопка далее переименована на установить)

тогда так

function ShouldSkipPage(PageID: Integer): Boolean;
begin
if (PageID = 8) or(PageID = 9) or(PageID = 10) then
Result:= True;
end;

-------
Inno Setup 5.5.1.ee2 Ultra ANSI Unicode

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:58, 26-08-2017 | #2048


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


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

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


Спасибо ZVSRus выручил.

Отправлено: 16:28, 26-08-2017 | #2049


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


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

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


Вопрос такой на Splash можно как то поставить анимацию (.gif)

Отправлено: 20:52, 27-08-2017 | #2050



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 7] El Sanchez Автоматическая установка приложений 2499 02-02-2015 08:59
Скрипты Inno Setup. Помощь и советы [часть 6] El Sanchez Автоматическая установка приложений 2494 10-03-2014 11:51
Скрипты Inno Setup. Помощь и советы [часть 5] El Sanchez Автоматическая установка приложений 1999 28-03-2013 19:09
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58




 
Переход