有没有一键安装的脚本,能快速完成所有软件部署?
- 内容介绍
- 文章标签
- 相关推荐
本文共计545个文字,预计阅读时间需要3分钟。
我正在寻找在inno设置中创建单页安装程序的方法,只需看看这个png:+ 任何人都可以给我这样的代码吗?默认情况下,这样做起来可能不太容易,但它是可以实现的。代码如下:
plaintext[Setup]AppName=My Single Page InstallerAppVersion=1.0DefaultDirName={pf}\MyInstaller
[Files]Source: path\to\your\png; DestDir: {app}; Flags: ignoreversion;
[Icons]Name: {commondesktop}\My Installer; Filename: {app}\path\to\your\png;
我正在寻找一种在inno设置中创建单页安装程序的方法,只需看看这个png:任何人都可以给我这样做的代码吗?
默认情况下做起来并不容易.但它可以完成,代码如下制作了一个像这样的页面.
[Setup] AppName=Test AppVersion=1.5 DefaultDirName={code:AppDir} ;Disable all of the default wizard pages DisableDirPage=yes DisableProgramGroupPage=yes DisableReadyMemo=yes DisableReadyPage=yes DisableStartupPrompt=yes DisableWelcomePage=yes ;May want this, after install. DisableFinishedPage=no [Messages] ButtonNext=Install [Files] Source:"e:\test.txt"; DestDir: "{app}" Source:"e:\test.txt"; DestDir: "{app}"; DestName: "test1.txt"; Check: Option1; Source:"e:\test.txt"; DestDir: "{app}"; DestName: "test2.txt"; Check: Option2; [Code] var MainPage : TWizardPage; edtFolderToInstall : TEdit; InstallLocation : String; Opt1, Opt2 : Boolean; ChkOption1 : TCheckBox; ChkOption2 : TCheckBox; function AppDir(Param: String): String; begin // Set Default if not set. if InstallLocation = '' then InstallLocation := ExpandConstant('{pf}') + 'test'; result := InstallLocation; end; function Option1 : Boolean; begin result := Opt1; end; function Option2 : Boolean; begin result := Opt2; end; procedure BrowseClick(Sender : TObject); var Dir : String; begin Dir := edtFolderToInstall.Text; if BrowseForFolder('Select Folder',Dir,false) then edtFolderToInstall.Text := Dir; end; procedure InitializeWizard(); var lblFolderToInstall : TLabel; btnFolderToInstall : TButton; begin MainPage := CreateCustomPage(wpWelcome,'Setup - Test App Name','This will install "Test App Name" to your computer'); lblFolderToInstall := TLabel.Create(MainPage); lblFolderToInstall.Parent := MainPage.Surface; lblFolderToInstall.Top := 10; lblFolderToInstall.Left := 10; lblFolderToInstall.Caption := 'If you would like to select a different folder, Click Browse.' edtFolderToInstall := TEdit.Create(MainPage); edtFolderToInstall.Parent := MainPage.Surface; edtFolderToInstall.Top := 25; edtFolderToInstall.Left := 10; edtFolderToInstall.Width := 250; edtFolderToInstall.Text := WizardDirValue; btnFolderToInstall := TButton.Create(MainPage); btnFolderToInstall.Parent := MainPage.Surface; btnFolderToInstall.top := 25; btnFolderToInstall.Left := 275; btnfolderToInstall.Caption := 'Browse...'; btnFolderToInstall.OnClick := @BrowseClick; ChkOption1 := TCheckBox.Create(MainForm); ChkOption1.Parent := MainPage.Surface; ChkOption1.Top := 50; ChkOption1.Left := 10; ChkOption1.Caption := 'Option 1'; ChkOption2 := TCheckBox.Create(MainForm); ChkOption2.Parent := MainPage.Surface; ChkOption2.Top := 75; ChkOption2.Left := 10; ChkOption2.Caption := 'Option 2'; end; function NextButtonClick(CurPageID: Integer): Boolean; begin result := True; // Next pressed, better make sure selected items are correct. if CurPageId = MainPage.ID then begin InstallLocation := edtFolderToInstall.Text; Opt1 := ChkOption1.Checked; Opt2 := ChkOption2.Checked; end; end;
为此,我使用{code:AppDir}作为默认目录.这告诉InnoSetup使用AppDir函数来检索安装目录.然后我可以使用我的自定义对话框设置它.
而不是使用[组件]和/或[任务],我必须使用[文件]部分中的检查.
本文共计545个文字,预计阅读时间需要3分钟。
我正在寻找在inno设置中创建单页安装程序的方法,只需看看这个png:+ 任何人都可以给我这样的代码吗?默认情况下,这样做起来可能不太容易,但它是可以实现的。代码如下:
plaintext[Setup]AppName=My Single Page InstallerAppVersion=1.0DefaultDirName={pf}\MyInstaller
[Files]Source: path\to\your\png; DestDir: {app}; Flags: ignoreversion;
[Icons]Name: {commondesktop}\My Installer; Filename: {app}\path\to\your\png;
我正在寻找一种在inno设置中创建单页安装程序的方法,只需看看这个png:任何人都可以给我这样做的代码吗?
默认情况下做起来并不容易.但它可以完成,代码如下制作了一个像这样的页面.
[Setup] AppName=Test AppVersion=1.5 DefaultDirName={code:AppDir} ;Disable all of the default wizard pages DisableDirPage=yes DisableProgramGroupPage=yes DisableReadyMemo=yes DisableReadyPage=yes DisableStartupPrompt=yes DisableWelcomePage=yes ;May want this, after install. DisableFinishedPage=no [Messages] ButtonNext=Install [Files] Source:"e:\test.txt"; DestDir: "{app}" Source:"e:\test.txt"; DestDir: "{app}"; DestName: "test1.txt"; Check: Option1; Source:"e:\test.txt"; DestDir: "{app}"; DestName: "test2.txt"; Check: Option2; [Code] var MainPage : TWizardPage; edtFolderToInstall : TEdit; InstallLocation : String; Opt1, Opt2 : Boolean; ChkOption1 : TCheckBox; ChkOption2 : TCheckBox; function AppDir(Param: String): String; begin // Set Default if not set. if InstallLocation = '' then InstallLocation := ExpandConstant('{pf}') + 'test'; result := InstallLocation; end; function Option1 : Boolean; begin result := Opt1; end; function Option2 : Boolean; begin result := Opt2; end; procedure BrowseClick(Sender : TObject); var Dir : String; begin Dir := edtFolderToInstall.Text; if BrowseForFolder('Select Folder',Dir,false) then edtFolderToInstall.Text := Dir; end; procedure InitializeWizard(); var lblFolderToInstall : TLabel; btnFolderToInstall : TButton; begin MainPage := CreateCustomPage(wpWelcome,'Setup - Test App Name','This will install "Test App Name" to your computer'); lblFolderToInstall := TLabel.Create(MainPage); lblFolderToInstall.Parent := MainPage.Surface; lblFolderToInstall.Top := 10; lblFolderToInstall.Left := 10; lblFolderToInstall.Caption := 'If you would like to select a different folder, Click Browse.' edtFolderToInstall := TEdit.Create(MainPage); edtFolderToInstall.Parent := MainPage.Surface; edtFolderToInstall.Top := 25; edtFolderToInstall.Left := 10; edtFolderToInstall.Width := 250; edtFolderToInstall.Text := WizardDirValue; btnFolderToInstall := TButton.Create(MainPage); btnFolderToInstall.Parent := MainPage.Surface; btnFolderToInstall.top := 25; btnFolderToInstall.Left := 275; btnfolderToInstall.Caption := 'Browse...'; btnFolderToInstall.OnClick := @BrowseClick; ChkOption1 := TCheckBox.Create(MainForm); ChkOption1.Parent := MainPage.Surface; ChkOption1.Top := 50; ChkOption1.Left := 10; ChkOption1.Caption := 'Option 1'; ChkOption2 := TCheckBox.Create(MainForm); ChkOption2.Parent := MainPage.Surface; ChkOption2.Top := 75; ChkOption2.Left := 10; ChkOption2.Caption := 'Option 2'; end; function NextButtonClick(CurPageID: Integer): Boolean; begin result := True; // Next pressed, better make sure selected items are correct. if CurPageId = MainPage.ID then begin InstallLocation := edtFolderToInstall.Text; Opt1 := ChkOption1.Checked; Opt2 := ChkOption2.Checked; end; end;
为此,我使用{code:AppDir}作为默认目录.这告诉InnoSetup使用AppDir函数来检索安装目录.然后我可以使用我的自定义对话框设置它.
而不是使用[组件]和/或[任务],我必须使用[文件]部分中的检查.

