How to skip all pages of the wizard and go directly to the installation process?

At this time, I use 3 pages of the wizard (Preparing to install, install, and complete) in my installer.

I want the process to be as simple as possible, so I would like to reduce it to 2 pages (installation and completion of the page).

Is there a way to skip all the pages of the wizard and go directly to the installation process when the installation program starts?

+4
source share
2 answers

The correct way is to disable all pages according to the following directives:

DisableWelcomePage=yes
DisableDirPage=yes
DisableProgramGroupPage=yes
DisableReadyPage=yes

, . . , , , :

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DisableWelcomePage=yes
DisableDirPage=yes
DisableProgramGroupPage=yes
DisableReadyPage=yes
[Code]
const
  BN_CLICKED = 0;
  WM_COMMAND = $0111;
  CN_BASE = $BC00;
  CN_COMMAND = CN_BASE + WM_COMMAND;

procedure CurPageChanged(CurPageID: Integer);
var
  Param: Longint;
begin
  { if we are on the ready page, then... }
  if CurPageID = wpReady then
  begin
    { the result of this is 0, just to be precise... }
    Param := 0 or BN_CLICKED shl 16;
    { post the click notification message to the next button }
    PostMessage(WizardForm.NextButton.Handle, CN_COMMAND, Param, 0);
  end;
end;

, , .

+9

(, ) . Inno , , . , , .

( , , .)

(, ), /SILENT .

+3

Source: https://habr.com/ru/post/1530108/


All Articles