File size: 8,064 Bytes
a400527
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
; Advanced Inno Setup Script for AI File Converter Pro

[Setup]
AppId={{AIFILE-CONVERTER-PRO-2024}}
AppName=AI File Converter Pro
AppVersion=2.0.0
AppVerName=AI File Converter Pro 2.0
AppPublisher=AI File Converter Team
AppPublisherURL=https://your-website.com
AppSupportURL=https://your-website.com/support
AppUpdatesURL=https://your-website.com/updates
DefaultDirName={autopf}\AI File Converter Pro
DefaultGroupName=AI File Converter Pro
AllowNoIcons=yes
LicenseFile=LICENSE.txt
OutputDir=InstallerOutput
OutputBaseFilename=AI_File_Converter_Pro_v2.0_Setup
SetupIconFile=logo.ico
Compression=lzma2
SolidCompression=yes
WizardStyle=modern
PrivilegesRequired=lowest
ArchitecturesInstallIn64BitMode=x64compatible
UninstallDisplayIcon={app}\AIFileConverter.exe
UninstallDisplayName=AI File Converter Pro

; Version info
VersionInfoVersion=2.0.0.0
VersionInfoCompany=AI File Converter Team
VersionInfoDescription=AI File Converter Pro Installer
VersionInfoProductName=AI File Converter Pro
VersionInfoProductVersion=2.0.0.0
VersionInfoCopyright=Copyright © 2024

; Sign tool (if you have a certificate)
; SignTool=mysign
; SignedUninstaller=yes

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "german"; MessagesFile: "compiler:Languages\German.isl"
Name: "french"; MessagesFile: "compiler:Languages\French.isl"
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 6.1
Name: "associatefiles"; Description: "Associate supported file types with AI File Converter Pro"; GroupDescription: "File associations:"

[Files]
Source: "dist\AIFileConverter.exe"; DestDir: "{app}"; Flags: ignoreversion signonce
Source: "logo.ico"; DestDir: "{app}"; Flags: ignoreversion
Source: "logo.png"; DestDir: "{app}"; Flags: ignoreversion
Source: "README.txt"; DestDir: "{app}"; Flags: ignoreversion; AfterInstall: CreateReadmeShortcut

; Include ffmpeg if bundled
; Source: "ffmpeg\*"; DestDir: "{app}\ffmpeg"; Flags: recursesubdirs createallsubdirs

; Include documentation
; Source: "docs\*"; DestDir: "{app}\docs"; Flags: recursesubdirs createallsubdirs

[Icons]
Name: "{group}\AI File Converter Pro"; Filename: "{app}\AIFileConverter.exe"; IconFilename: "{app}\logo.ico"; WorkingDir: "{app}"
Name: "{group}\{cm:UninstallProgram,AI File Converter Pro}"; Filename: "{uninstallexe}"; IconFilename: "{app}\logo.ico"
Name: "{autodesktop}\AI File Converter Pro"; Filename: "{app}\AIFileConverter.exe"; IconFilename: "{app}\logo.ico"; WorkingDir: "{app}"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\AI File Converter Pro"; Filename: "{app}\AIFileConverter.exe"; IconFilename: "{app}\logo.ico"; Tasks: quicklaunchicon
Name: "{group}\Readme"; Filename: "{app}\README.txt"

[Run]
Filename: "{app}\AIFileConverter.exe"; Description: "{cm:LaunchProgram,AI File Converter Pro}"; Flags: nowait postinstall skipifsilent

[UninstallDelete]
Type: filesandordirs; Name: "{app}\*.log"
Type: dirifempty; Name: "{app}"

[Registry]
; Add to PATH (optional)
; Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};{app}"; Check: IsAdminInstallMode

; File associations
Root: HKCR; Subkey: ".mp3"; ValueType: string; ValueData: "AI_File_Converter_Pro.audio"; Flags: uninsdeletekey; Tasks: associatefiles
Root: HKCR; Subkey: ".mp4"; ValueType: string; ValueData: "AI_File_Converter_Pro.video"; Flags: uninsdeletekey; Tasks: associatefiles
Root: HKCR; Subkey: ".pdf"; ValueType: string; ValueData: "AI_File_Converter_Pro.document"; Flags: uninsdeletekey; Tasks: associatefiles
Root: HKCR; Subkey: ".jpg"; ValueType: string; ValueData: "AI_File_Converter_Pro.image"; Flags: uninsdeletekey; Tasks: associatefiles
Root: HKCR; Subkey: ".png"; ValueType: string; ValueData: "AI_File_Converter_Pro.image"; Flags: uninsdeletekey; Tasks: associatefiles

[Code]
var
  CustomPage: TWizardPage;
  ChkBoxCreateBackup: TNewCheckBox;
  
procedure InitializeWizard;
var
  WelcomeLabel: TNewStaticText;
  Page: TWizardPage;
  CustomLabel: TNewStaticText;
begin
  // Custom Welcome Message
  WizardForm.WelcomeLabel2.Caption := 'Welcome to AI File Converter Pro 2.0!' + #13#10 + 
                                      #13#10 +
                                      'AI File Converter Pro is a powerful file conversion tool ' +
                                      'that uses artificial intelligence to help you convert files ' +
                                      'with natural language commands.' + #13#10 +
                                      #13#10 +
                                      'Key Features:' + #13#10 +
                                      '• Support for documents, images, videos, and audio' + #13#10 +
                                      '• AI-powered format recommendations' + #13#10 +
                                      '• Natural language commands' + #13#10 +
                                      '• Batch processing with queue management' + #13#10 +
                                      '• High-quality conversion with optimization' + #13#10 +
                                      #13#10 +
                                      'Click Next to continue or Cancel to exit setup.';
  
  // Custom page for additional options
  CustomPage := CreateCustomPage(wpSelectTasks, 'Additional Options', 'Select additional setup options');
  CustomLabel := TNewStaticText.Create(CustomPage);
  CustomLabel.Parent := CustomPage.Surface;
  CustomLabel.Caption := 'Choose additional options for the installation:';
  CustomLabel.Top := 0;
  CustomLabel.Width := CustomPage.SurfaceWidth;
  
  ChkBoxCreateBackup := TNewCheckBox.Create(CustomPage);
  ChkBoxCreateBackup.Parent := CustomPage.Surface;
  ChkBoxCreateBackup.Caption := 'Create a backup of previous installation';
  ChkBoxCreateBackup.Top := 30;
  ChkBoxCreateBackup.Width := CustomPage.SurfaceWidth;
  ChkBoxCreateBackup.Checked := False;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
  if CurStep = ssPostInstall then
  begin
    // Create a log file of installation
    SaveStringToFile(ExpandConstant('{app}\install_log.txt'), 
                    'Installation completed at ' + GetDateTimeString('yyyy-mm-dd hh:nn:ss', #0, #0) + #13#10,
                    False);
    
    // Add custom post-installation steps here
    if ChkBoxCreateBackup.Checked then
    begin
      // Backup logic here
      Log('Creating backup...');
    end;
  end;
end;

function NeedRestart(): Boolean;
begin
  Result := False;
end;

procedure CreateReadmeShortcut();
begin
  // Custom post-install action for README
  SaveStringToFile(ExpandConstant('{app}\README.txt'), 
                  'AI File Converter Pro' + #13#10 +
                  '=====================' + #13#10 + #13#10 +
                  'Thank you for installing AI File Converter Pro!' + #13#10 + #13#10 +
                  'Quick Start:' + #13#10 +
                  '1. Launch the application' + #13#10 +
                  '2. Select file type (Document/Image/Video/Audio)' + #13#10 +
                  '3. Add files to convert' + #13#10 +
                  '4. Choose output format' + #13#10 +
                  '5. Click Start Conversion' + #13#10 + #13#10 +
                  'Using AI Assistant:' + #13#10 +
                  '- Type "convert this to pdf" to change format' + #13#10 +
                  '- Ask "best format for web" for recommendations' + #13#10 +
                  '- Say "analyze this file" for file insights' + #13#10 + #13#10 +
                  'For support, visit: https://your-website.com/support',
                  False);
end;