139 lines
4.6 KiB
Plaintext
139 lines
4.6 KiB
Plaintext
; 脚本由 Inno Setup 脚本向导 生成!
|
||
; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档!
|
||
|
||
#define MyAppName "我的程序"
|
||
#define MyAppVersion "1.5"
|
||
#define MyAppPublisher "我的公司"
|
||
#define MyAppURL "http://www.example.com/"
|
||
#define MyAppExeName "MyProg.exe"
|
||
|
||
[Setup]
|
||
; 注: AppId的值为单独标识该应用程序。
|
||
; 不要为其他安装程序使用相同的AppId值。
|
||
; (若要生成新的 GUID,可在菜单中点击 "工具|生成 GUID"。)
|
||
AppId={{0D5BFA20-02BB-46D0-A603-2638F085F72B}
|
||
AppName={#MyAppName}
|
||
AppVersion={#MyAppVersion}
|
||
;AppVerName={#MyAppName} {#MyAppVersion}
|
||
AppPublisher={#MyAppPublisher}
|
||
AppPublisherURL={#MyAppURL}
|
||
AppSupportURL={#MyAppURL}
|
||
AppUpdatesURL={#MyAppURL}
|
||
DefaultDirName={autopf}\{#MyAppName}
|
||
DisableProgramGroupPage=yes
|
||
DisableReadyPage=yes
|
||
DisableReadyMemo=yes
|
||
ShowLanguageDialog=false
|
||
LicenseFile=D:\Code\gitea\InnoSetup\MyProg\license.txt
|
||
InfoBeforeFile=D:\Code\gitea\InnoSetup\MyProg\install_before.txt
|
||
InfoAfterFile=D:\Code\gitea\InnoSetup\MyProg\install_after.txt
|
||
; 移除以下行,以在管理安装模式下运行(为所有用户安装)。
|
||
PrivilegesRequired=lowest
|
||
PrivilegesRequiredOverridesAllowed=dialog
|
||
OutputDir=D:\Code\gitea\InnoSetup\MyProg\Out
|
||
OutputBaseFilename=mysetup
|
||
Compression=lzma
|
||
SolidCompression=yes
|
||
WizardStyle=modern
|
||
|
||
[Languages]
|
||
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl"
|
||
Name: "english"; MessagesFile: "compiler:Languages\English.isl"
|
||
|
||
[Tasks]
|
||
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
|
||
|
||
[Files]
|
||
Source: "C:\Program Files (x86)\Inno Setup 6\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion”
|
||
;包含所有临时资源文件(勿删)
|
||
Source: ".\resources\*"; DestDir: "{tmp}"; Flags: dontcopy solidbreak nocompression; Attribs: hidden system
|
||
|
||
[Icons]
|
||
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
|
||
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
|
||
|
||
[Run]
|
||
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
|
||
|
||
[Code]
|
||
CONST
|
||
//PRODUCT_REGISTRY_KEY_32 = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppID}_is1';
|
||
//PRODUCT_REGISTRY_KEY_64 = 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppID}_is1';
|
||
WM_SYSCOMMAND = $0112;
|
||
ID_BUTTON_ON_CLICK_EVENT = 1;
|
||
WIZARDFORM_WIDTH_NORMAL = 600;
|
||
WIZARDFORM_HEIGHT_NORMAL = 400;
|
||
WIZARDFORM_HEIGHT_MORE = 470;
|
||
|
||
VAR
|
||
CreateShortcutCb: TNewCheckBox;
|
||
StartWithWinCb: TNewCheckBox;
|
||
AgreeTextCb: TNewCheckBox;
|
||
|
||
procedure CreateShortcutCbClick(Sender: TObject);
|
||
begin
|
||
// 在这里处理复选框的选择变化事件
|
||
if CreateShortcutCb.Checked then
|
||
MsgBox('复选框被选中了。', mbInformation, MB_OK)
|
||
else
|
||
MsgBox('复选框被取消选中了。', mbInformation, MB_OK);
|
||
end;
|
||
|
||
procedure CreateShortcutCbCreate(Sender: TObject);
|
||
begin
|
||
// 在控件创建时设置字体颜色
|
||
TNewCheckBox(Sender).Font.Color := clWhite;
|
||
end;
|
||
|
||
PROCEDURE CurPageChanged(CurPageID : INTEGER);
|
||
BEGIN
|
||
if CurPageID = wpWelcome then
|
||
BEGIN
|
||
CreateShortcutCb := TNewCheckBox.Create(WizardForm);
|
||
CreateShortcutCb.Parent := WizardForm;
|
||
CreateShortcutCb.Left := 20;
|
||
CreateShortcutCb.Top := 120;
|
||
CreateShortcutCb.Caption := '我同意安装此软件';
|
||
CreateShortcutCb.Font.Color := clWhite;
|
||
CreateShortcutCb.OnClick := @CreateShortcutCbClick;
|
||
CreateShortcutCb.Refresh;
|
||
END;
|
||
END;
|
||
|
||
//指定跳过哪些标准页面
|
||
FUNCTION ShouldSkipPage(PageID : INTEGER) : BOOLEAN;
|
||
BEGIN
|
||
IF (PageID = wpLicense) THEN Result := TRUE;
|
||
IF (PageID = wpPassword) THEN Result := TRUE;
|
||
IF (PageID = wpInfoBefore) THEN Result := TRUE;
|
||
IF (PageID = wpUserInfo) THEN Result := TRUE;
|
||
IF (PageID = wpSelectDir) THEN Result := TRUE;
|
||
IF (PageID = wpSelectComponents) THEN Result := TRUE;
|
||
IF (PageID = wpSelectProgramGroup) THEN Result := TRUE;
|
||
IF (PageID = wpSelectTasks) THEN Result := TRUE;
|
||
IF (PageID = wpReady) THEN Result := TRUE;
|
||
IF (PageID = wpPreparing) THEN Result := TRUE;
|
||
IF (PageID = wpInfoAfter) THEN Result := TRUE;
|
||
END;
|
||
|
||
|
||
procedure InitializeWizard();
|
||
begin
|
||
WizardForm.InnerNotebook.Hide();
|
||
WizardForm.OuterNotebook.Hide();
|
||
WizardForm.Bevel.Hide();
|
||
WITH WizardForm DO
|
||
BEGIN
|
||
BorderStyle := bsNone;
|
||
Position := poScreenCenter;
|
||
Width := WIZARDFORM_WIDTH_NORMAL;
|
||
Height := WIZARDFORM_HEIGHT_MORE;
|
||
Color := clRed;
|
||
NextButton.Height := 0;
|
||
CancelButton.Height := 0;
|
||
BackButton.Visible := FALSE;
|
||
END;
|
||
end;
|
||
|