| |
152 |
152 |
Source: "..\bin\release\{#LibSerializerFilename32}"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
153 |
153 |
Source: "..\bin\release\{#LibStringFilename32}"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
154 |
154 |
Source: "..\bin\release\{#LibLoggerFilename32}"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
155 |
155 |
Source: "..\bin\release\{#SQLite32}"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
156 |
156 |
Source: "{#MSRedistDir32}\Microsoft.VC141.CRT\*"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
157 |
157 |
Source: "{#MSRedistDir32}\Microsoft.VC141.MFC\*"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
158 |
158 |
Source: "{#UCrtDir32}\*"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
159 |
159 |
Source: "{#DbgHelp32}\dbghelp.dll"; DestDir: "{app}\ShellExt32"; Flags: ignoreversion restartreplace uninsrestartdelete; Check: Is64BitInstallMode |
| |
160 |
160 |
|
| |
161 |
161 |
; NOTE: Don't use "Flags: ignoreversion" on any shared system files |
| |
162 |
162 |
|
| |
163 |
163 |
[Icons] |
| |
164 |
164 |
Name: {group}\{#MyAppName}; Filename: {app}\{code:ExpandArch|ExeFilename}; WorkingDir: {app} |
| |
165 |
165 |
Name: {group}\{cm:TranslateCopyHandler}; Filename: {app}\{code:ExpandArch|ICTranslateFilename}; Parameters: """{app}\langs\english.lng"""; WorkingDir: {app}\lang |
| |
166 |
166 |
Name: {group}\{cm:UninstallCopyHandler}; Filename: {uninstallexe}; WorkingDir: {app} |
| |
167 |
167 |
Name: {commondesktop}\{#MyAppName}; Filename: {app}\{code:ExpandArch|ExeFilename}; Tasks: desktopicon; WorkingDir: {app} |
| |
168 |
168 |
Name: {commonappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}; Filename: {app}\{code:ExpandArch|ExeFilename}; Tasks: quicklaunchicon; WorkingDir: {app} |
| |
169 |
169 |
|
| |
170 |
170 |
[Run] |
| |
171 |
171 |
Filename: "{app}\{code:ExpandArch|ExeFilename}"; Flags: nowait postinstall skipifsilent; Description: "{cm:LaunchProgram,{#MyAppName}}" |
| |
172 |
|
Filename: "Reg.exe"; Parameters: "delete ""HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"" /v ""Copy Handler"" /f"; Flags: runasoriginaluser; |
| |
173 |
|
Filename: "Reg.exe"; Parameters: "add ""HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"" /v ""Copy Handler"" /t REG_SZ /d ""{app}\{code:ExpandArch|ExeFilename}"" /f"; Flags: runasoriginaluser postinstall; Tasks: startatboot |
| |
174 |
172 |
|
| |
175 |
173 |
[Registry] |
| |
176 |
174 |
Root: "HKLM"; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"; ValueType: none; ValueName: "Copy Handler"; Flags: deletevalue uninsdeletevalue |
| |
177 |
175 |
|
| |
178 |
176 |
[Dirs] |
| |
179 |
177 |
Name: {app}\help; Flags: uninsalwaysuninstall |
| |
180 |
178 |
Name: {app}\langs; Flags: uninsalwaysuninstall |
| |
181 |
179 |
|
| |
182 |
180 |
[CustomMessages] |
| |
183 |
181 |
TranslateCopyHandler=Translate Copy Handler |
| |
184 |
182 |
polish.TranslateCopyHandler=Przet�umacz program Copy Handler |
| |
185 |
183 |
UninstallCopyHandler=Uninstall Copy Handler |
| |
186 |
184 |
polish.UninstallCopyHandler=Odinstaluj program Copy Handler |
| |
187 |
185 |
StartAtBoot=Run program at system startup |
| |
188 |
186 |
polish.StartAtBoot=Uruchom program przy starcie systemu |
| |
189 |
187 |
|
| |
190 |
188 |
[ThirdParty] |
| |
191 |
189 |
CompileLogMethod=append |
| |
192 |
190 |
|
| |
193 |
191 |
[Code] |
| |
194 |
192 |
function ExpandArch(ConstantStr: String): String; |
| |
195 |
193 |
begin |
| |
196 |
194 |
if Is64BitInstallMode then |
| |
197 |
195 |
begin |
| |
198 |
196 |
case ConstantStr of |
| |
199 |
197 |
'ExeFilename': Result := '{#ExeFilename64}'; |
| |
200 |
198 |
'ICTranslateFilename': Result := '{#ICTranslateFilename64}'; |
| |
201 |
199 |
end; |
| |
202 |
200 |
end |
| |
203 |
201 |
else |
| |
204 |
202 |
begin |
| |
205 |
203 |
case ConstantStr of |
| |
206 |
204 |
'ExeFilename': Result := '{#ExeFilename32}'; |
| |
207 |
205 |
'ICTranslateFilename': Result := '{#ICTranslateFilename32}'; |
| |
208 |
206 |
end; |
| |
209 |
207 |
end; |
| |
210 |
208 |
end; |
| |
|
209 |
|
| |
|
210 |
procedure CurStepChanged(CurStep: TSetupStep); |
| |
|
211 |
var |
| |
|
212 |
ResultCode: Integer; |
| |
|
213 |
begin |
| |
|
214 |
if CurStep = ssPostInstall then |
| |
|
215 |
begin |
| |
|
216 |
if IsTaskSelected('startatboot') then |
| |
|
217 |
ExecAsOriginalUser('Reg.exe', 'add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "Copy Handler" /d "' + ExpandConstant('{app}\{code:ExpandArch|ExeFilename}') + '" /f', '', SW_HIDE, ewWaitUntilTerminated, ResultCode) |
| |
|
218 |
else |
| |
|
219 |
ExecAsOriginalUser('Reg.exe', 'delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "Copy Handler" /f', '', SW_HIDE, ewWaitUntilTerminated, ResultCode) |
| |
|
220 |
end; |
| |
|
221 |
end; |