inno-setup

Setting control width to half of custom page SurfaceWidth does not work correctly in Inno Setup

隐身守侯 提交于 2021-02-18 19:09:10
问题 I placed a Panel on my custom page and gave it a width of SurfaceWidth . Then I changed its width to SurfaceWidth div 2 . Here's the result: As you can see from the screenshot the new panel's width is definitely not equal to SurfaceWidth div 2 . Why is that so? Here's the code: [Setup] WizardStyle=modern [Code] procedure InitializeWizard(); var Page: TWizardPage; Panel: TPanel; begin Page := CreateCustomPage(wpWelcome, 'Custom wizard page controls', 'TButton and others'); Panel := TPanel

Setting control width to half of custom page SurfaceWidth does not work correctly in Inno Setup

半世苍凉 提交于 2021-02-18 19:07:03
问题 I placed a Panel on my custom page and gave it a width of SurfaceWidth . Then I changed its width to SurfaceWidth div 2 . Here's the result: As you can see from the screenshot the new panel's width is definitely not equal to SurfaceWidth div 2 . Why is that so? Here's the code: [Setup] WizardStyle=modern [Code] procedure InitializeWizard(); var Page: TWizardPage; Panel: TPanel; begin Page := CreateCustomPage(wpWelcome, 'Custom wizard page controls', 'TButton and others'); Panel := TPanel

Inno Setup Remember selected setup type when Uninstallable=no

主宰稳场 提交于 2021-02-18 18:54:15
问题 I am creating an Inno Setup installer that is a little non traditional. I am setting Uninstallable=no but I still need to be able to remember what the user selected for the type of install if they reinstall in the future. I thought about writing the type out to a file which I was able to do. I am not sure how to set the type when the installer is run the next time however. Here is my code for storing the type. procedure CurStepChanged(CurStep: TSetupStep); begin if (CurStep = ssDone) then

Inno Setup Remember selected setup type when Uninstallable=no

此生再无相见时 提交于 2021-02-18 18:53:24
问题 I am creating an Inno Setup installer that is a little non traditional. I am setting Uninstallable=no but I still need to be able to remember what the user selected for the type of install if they reinstall in the future. I thought about writing the type out to a file which I was able to do. I am not sure how to set the type when the installer is run the next time however. Here is my code for storing the type. procedure CurStepChanged(CurStep: TSetupStep); begin if (CurStep = ssDone) then

Inno Setup Remember selected setup type when Uninstallable=no

旧城冷巷雨未停 提交于 2021-02-18 18:52:11
问题 I am creating an Inno Setup installer that is a little non traditional. I am setting Uninstallable=no but I still need to be able to remember what the user selected for the type of install if they reinstall in the future. I thought about writing the type out to a file which I was able to do. I am not sure how to set the type when the installer is run the next time however. Here is my code for storing the type. procedure CurStepChanged(CurStep: TSetupStep); begin if (CurStep = ssDone) then

Add additional controls to standard Inno Setup pages?

天涯浪子 提交于 2021-02-18 18:46:37
问题 How to add checkbox to the folder selection dialog created by the Inno Setup which is shown below in the image? This is not a custom dialog. It is created by the Inno Setup automatically. 回答1: Set the Parent property of the checkbox to the WizardForm.SelectDirPage : var Checkbox: TNewCheckBox; procedure InitializeWizard(); begin Checkbox := TNewCheckBox.Create(WizardForm.SelectDirPage); Checkbox.Parent := WizardForm.SelectDirPage; Checkbox.Top := WizardForm.DirEdit.Top + WizardForm.DirEdit

Inno Script Studio - Sign tool not recognised when using compiler from command prompt

时间秒杀一切 提交于 2021-02-18 10:34:30
问题 I am signing my installer with a digital certificate. When using Inno Script Studio, I have correctly defined my sign tool with a path to the MS signing tool, certificate password etc. And I simply reference it with SignTool=signtool And this works fine. But when I try and compile my script via the command line using: C:\Program Files (x86)\Inno Setup 5>iscc "C:\Users\username\Documents\MyInstaller.iss" I get an error: Value of [Setup] section directive "SignTool" is invalid. When I read the

Installer created via Inno Setup, can't close applications during installation on Windows 10

那年仲夏 提交于 2021-02-18 07:09:29
问题 I have created an installer for my application using Inno Setup. For a while everything works fine but recently installer failing to close explorer.exe (Windows Explorer) on Windows 10 during installation. Installer needs to restart it to replace existing context menu handler with new, but the more strange thing is that same installer works fine on Windows 8 and 8.1. Adding restartreplace flag does not helps. I also noticed that the installer can't close currently running application (old one

How to allow only one checked box in [Run] section?

為{幸葍}努か 提交于 2021-02-16 14:03:26
问题 My Inno Setup program installs three programs during the installation. I added the checkbox for each of the three programs to show after installation page in the [Run] section: Filename: "{app}\Program1.exe"; Description: "{cm:LaunchProgram,{#StringChange("Program1", '&', '&&')}}"; Flags: nowait postinstall skipifsilent unchecked runascurrentuser; Filename: "{app}\Program2.exe"; Description: "{cm:LaunchProgram,{#StringChange("Program2", '&', '&&')}}"; Flags: nowait postinstall skipifsilent

Inno Setup - Pad a string to a specific length with zeros

青春壹個敷衍的年華 提交于 2021-02-08 10:27:24
问题 Here's what my code currently looks like: var Page: TInputQueryWizardPage; procedure IDKeyPress(Sender: TObject; var Key: Char); var KeyCode: Integer; begin KeyCode := Ord(Key); if not ((KeyCode = 8) or ((KeyCode >= 48) and (KeyCode <= 57))) then Key := #0; end; Procedure InitializeWizard(); Begin Page := CreateInputQueryPage(blahblah); Page.Add('Profile ID:', False); Page.Edits[0].MaxLength := 16; Page.Edits[0].OnKeyPress := @IDKeyPress; Page.Values[0] := '0000000000000000'; End; procedure