| |
4 |
4 |
#include "../src/common/version.h" |
| |
5 |
5 |
#define MyAppName PRODUCT_NAME |
| |
6 |
6 |
#define MyAppVerName PRODUCT_NAME + " " + PRODUCT_VERSION |
| |
7 |
7 |
#define MyAppPublisher "JĂłzef Starosczyk" |
| |
8 |
8 |
#define MyAppURL "http://www.copyhandler.com" |
| |
9 |
9 |
|
| |
10 |
10 |
#define InstallerFilename "chsetup-" + PRODUCT_VERSION |
| |
11 |
11 |
|
| |
12 |
12 |
#define ExeFilename32 "ch.exe" |
| |
13 |
13 |
#define ExeFilename64 "ch64.exe" |
| |
14 |
14 |
#define ShellExtFilename32 "chext.dll" |
| |
15 |
15 |
#define ShellExtFilename64 "chext64.dll" |
| |
16 |
16 |
#define LibicpfFilename32 "libicpf32u.dll" |
| |
17 |
17 |
#define LibicpfFilename64 "libicpf64u.dll" |
| |
18 |
18 |
#define LibCHCoreFilename32 "libchcore32u.dll" |
| |
19 |
19 |
#define LibCHCoreFilename64 "libchcore64u.dll" |
| |
20 |
20 |
#define LibictranslateFilename32 "libictranslate32u.dll" |
| |
21 |
21 |
#define LibictranslateFilename64 "libictranslate64u.dll" |
| |
22 |
22 |
#define ICTranslateFilename32 "ictranslate.exe" |
| |
23 |
23 |
#define ICTranslateFilename64 "ictranslate64.exe" |
| |
|
24 |
#define SQLite32 "sqlite3_32.dll" |
| |
|
25 |
#define SQLite64 "sqlite3_64.dll" |
| |
24 |
26 |
#define MSRedistDir32 "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\x86" |
| |
25 |
27 |
#define MSRedistDir64 "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\amd64" |
| |
26 |
28 |
#define DbgHelp32 "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86" |
| |
27 |
29 |
#define DbgHelp64 "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x64" |
| |
28 |
30 |
|
| |
29 |
31 |
[Setup] |
| |
30 |
32 |
AppName={#MyAppName} |
| |
31 |
33 |
AppVerName={#MyAppVerName} |
| |
32 |
34 |
AppPublisher={#MyAppPublisher} |
| |
33 |
35 |
AppPublisherURL={#MyAppURL} |
| |
34 |
36 |
AppSupportURL={#MyAppURL} |
| |
35 |
37 |
AppUpdatesURL={#MyAppURL} |
| |
36 |
38 |
DefaultDirName={pf}\{#MyAppName} |
| |
37 |
39 |
DefaultGroupName={#MyAppName} |
| |
38 |
40 |
AllowNoIcons=true |
| |
39 |
41 |
LicenseFile=..\License.txt |
| |
40 |
42 |
OutputDir=.\ |
| |
41 |
43 |
OutputBaseFilename={#InstallerFilename} |
| |
42 |
44 |
Compression=lzma/ultra |
| |
43 |
45 |
SolidCompression=true |
| |
44 |
46 |
AppMutex=_Copy handler_ instance |
| |
45 |
47 |
ShowLanguageDialog=auto |
| |
46 |
48 |
AppID={{9CF6A157-F0E8-4216-B229-C0CA8204BE2C} |
| |
47 |
49 |
InternalCompressLevel=ultra |
| |
48 |
50 |
AppCopyright={#COPYRIGHT_INFO} |
| |
49 |
51 |
AppVersion={#PRODUCT_VERSION} |
| |
50 |
52 |
UninstallDisplayIcon={app}\{#ExeFilename32} |
| |
51 |
53 |
AppContact=ixen(at)copyhandler(dot)com |
| |
52 |
54 |
VersionInfoVersion= |
| |
53 |
55 |
VersionInfoTextVersion={#PRODUCT_VERSION} |
| |
54 |
56 |
VersionInfoCopyright={#COPYRIGHT_INFO} |
| |
55 |
57 |
ChangesEnvironment=true |
| |
56 |
|
ArchitecturesInstallIn64BitMode=x64 ia64 |
| |
|
58 |
ArchitecturesInstallIn64BitMode=x64 |
| |
57 |
59 |
|
| |
58 |
60 |
[Languages] |
| |
59 |
61 |
Name: "english"; MessagesFile: "compiler:Default.isl" |
| |
60 |
62 |
Name: "brazilianportuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl" |
| |
61 |
63 |
Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl" |
| |
62 |
64 |
Name: "czech"; MessagesFile: "compiler:Languages\Czech.isl" |
| |
63 |
65 |
Name: "danish"; MessagesFile: "compiler:Languages\Danish.isl" |
| |
64 |
66 |
Name: "dutch"; MessagesFile: "compiler:Languages\Dutch.isl" |
| |
65 |
67 |
Name: "finnish"; MessagesFile: "compiler:Languages\Finnish.isl" |
| |
66 |
68 |
Name: "french"; MessagesFile: "compiler:Languages\French.isl" |
| |
67 |
69 |
Name: "german"; MessagesFile: "compiler:Languages\German.isl" |
| |
68 |
70 |
Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl" |
| |
69 |
71 |
Name: "hebrew"; MessagesFile: "compiler:Languages\Hebrew.isl" |
| |
70 |
72 |
Name: "hungarian"; MessagesFile: "compiler:Languages\Hungarian.isl" |
| |
71 |
73 |
Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl" |
| |
72 |
74 |
Name: "japanese"; MessagesFile: "compiler:Languages\Japanese.isl" |
| |
73 |
75 |
Name: "norwegian"; MessagesFile: "compiler:Languages\Norwegian.isl" |
| |
74 |
76 |
Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl" |
| |
75 |
77 |
Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl" |
| |
76 |
78 |
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl" |
| |
77 |
79 |
Name: "serbiancyrillic"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl" |
| |
78 |
80 |
Name: "serbianlatin"; MessagesFile: "compiler:Languages\SerbianLatin.isl" |
| |
79 |
81 |
Name: "slovenian"; MessagesFile: "compiler:Languages\Slovenian.isl" |
| |
80 |
82 |
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl" |
| |
81 |
83 |
Name: "ukrainian"; MessagesFile: "compiler:Languages\Ukrainian.isl" |
| |
82 |
84 |
|
| |
83 |
85 |
[Tasks] |
| |
84 |
86 |
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked |
| |
85 |
87 |
Name: quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked |
| |
86 |
88 |
Name: startatboot; Description: {cm:StartAtBoot}; Flags: unchecked |
| |
87 |
89 |
|
| |
88 |
90 |
[Files] |
| |
89 |
|
Source: ..\bin\release\help\*; DestDir: {app}\help; Flags: ignoreversion recursesubdirs createallsubdirs |
| |
90 |
|
Source: ..\bin\release\langs\*; DestDir: {app}\langs; Flags: ignoreversion recursesubdirs createallsubdirs |
| |
91 |
|
Source: ..\License.txt; DestDir: {app}; Flags: ignoreversion |
| |
|
91 |
Source: "C:\projects\ch-rw\bin\release\help\*.chm"; DestDir: "{app}\help"; Flags: ignoreversion recursesubdirs createallsubdirs |
| |
|
92 |
Source: "C:\projects\ch-rw\bin\release\langs\*.lng"; DestDir: "{app}\langs"; Flags: ignoreversion recursesubdirs createallsubdirs |
| |
|
93 |
Source: "..\License.txt"; DestDir: "{app}"; Flags: ignoreversion |
| |
92 |
94 |
|
| |
93 |
|
Source: ..\bin\release\{#ExeFilename32}; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
94 |
|
Source: ..\bin\release\{#ExeFilename64}; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
95 |
|
Source: ..\bin\release\{#ShellExtFilename32}; DestDir: {app}; Flags: restartreplace uninsrestartdelete regserver replacesameversion; Check: not Is64BitInstallMode |
| |
96 |
|
Source: ..\bin\release\{#ShellExtFilename64}; DestDir: {app}; Flags: restartreplace uninsrestartdelete regserver replacesameversion; Check: Is64BitInstallMode |
| |
97 |
|
Source: ..\bin\release\{#LibicpfFilename32}; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
98 |
|
Source: ..\bin\release\{#LibicpfFilename64}; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
99 |
|
Source: ..\bin\release\{#LibCHCoreFilename32}; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
100 |
|
Source: ..\bin\release\{#LibCHCoreFilename64}; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
101 |
|
Source: ..\bin\release\{#LibictranslateFilename32}; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
102 |
|
Source: ..\bin\release\{#LibictranslateFilename64}; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
103 |
|
Source: ..\bin\release\{#ICTranslateFilename32}; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
104 |
|
Source: ..\bin\release\{#ICTranslateFilename64}; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
95 |
Source: "..\bin\release\{#ExeFilename32}"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
96 |
Source: "..\bin\release\{#ExeFilename64}"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
97 |
Source: "..\bin\release\{#ShellExtFilename32}"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete regserver replacesameversion; Check: not Is64BitInstallMode |
| |
|
98 |
Source: "..\bin\release\{#ShellExtFilename64}"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete regserver replacesameversion; Check: Is64BitInstallMode |
| |
|
99 |
Source: "..\bin\release\{#LibicpfFilename32}"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
100 |
Source: "..\bin\release\{#LibicpfFilename64}"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
101 |
Source: "..\bin\release\{#LibCHCoreFilename32}"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
102 |
Source: "..\bin\release\{#LibCHCoreFilename64}"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
103 |
Source: "..\bin\release\{#LibictranslateFilename32}"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
104 |
Source: "..\bin\release\{#LibictranslateFilename64}"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
105 |
Source: "..\bin\release\{#ICTranslateFilename32}"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
106 |
Source: "..\bin\release\{#ICTranslateFilename64}"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
107 |
Source: "..\bin\release\{#SQLite64}"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
108 |
Source: "..\bin\release\{#SQLite64}"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
105 |
109 |
|
| |
106 |
|
Source: {#MSRedistDir32}\Microsoft.VC90.CRT\*; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
107 |
|
Source: {#MSRedistDir64}\Microsoft.VC90.CRT\*; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
108 |
|
Source: {#MSRedistDir32}\Microsoft.VC90.MFC\*; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
109 |
|
Source: {#MSRedistDir64}\Microsoft.VC90.MFC\*; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
110 |
|
Source: {#DbgHelp32}\dbghelp.dll; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
111 |
|
Source: {#DbgHelp64}\dbghelp.dll; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
110 |
Source: "{#MSRedistDir32}\Microsoft.VC90.CRT\*"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
111 |
Source: "{#MSRedistDir64}\Microsoft.VC90.CRT\*"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
112 |
Source: "{#MSRedistDir32}\Microsoft.VC90.MFC\*"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
113 |
Source: "{#MSRedistDir64}\Microsoft.VC90.MFC\*"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
|
114 |
Source: "{#DbgHelp32}\dbghelp.dll"; DestDir: "{app}"; Flags: ignoreversion; Check: not Is64BitInstallMode |
| |
|
115 |
Source: "{#DbgHelp64}\dbghelp.dll"; DestDir: "{app}"; Flags: ignoreversion; Check: Is64BitInstallMode |
| |
112 |
116 |
|
| |
113 |
117 |
; NOTE: Don't use "Flags: ignoreversion" on any shared system files |
| |
114 |
118 |
|
| |
115 |
119 |
[Icons] |
| |
116 |
120 |
Name: {group}\{#MyAppName}; Filename: {app}\{code:ExpandArch|ExeFilename}; WorkingDir: {app} |
| |
117 |
121 |
Name: {group}\{cm:TranslateCopyHandler}; Filename: {app}\{code:ExpandArch|ICTranslateFilename}; Parameters: """{app}\langs\english.lng"""; WorkingDir: {app}\lang |
| |
118 |
122 |
Name: {group}\{cm:UninstallCopyHandler}; Filename: {uninstallexe}; WorkingDir: {app} |
| |
119 |
123 |
Name: {userdesktop}\{#MyAppName}; Filename: {app}\{code:ExpandArch|ExeFilename}; Tasks: desktopicon; WorkingDir: {app} |
| |
120 |
124 |
Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}; Filename: {app}\{code:ExpandArch|ExeFilename}; Tasks: quicklaunchicon; WorkingDir: {app} |
| |
121 |
125 |
|
| |
122 |
126 |
[Run] |
| |
123 |
|
Filename: {app}\{code:ExpandArch|ExeFilename}; Description: {cm:LaunchProgram,{#MyAppName}}; Flags: nowait postinstall skipifsilent 32bit |
| |
|
127 |
Filename: "{app}\{code:ExpandArch|ExeFilename}"; Flags: nowait postinstall skipifsilent; Description: "{cm:LaunchProgram,{#MyAppName}}" |
| |
124 |
128 |
|
| |
125 |
129 |
[Registry] |
| |
126 |
130 |
|
| |
127 |
131 |
Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Run; ValueType: string; ValueName: Copy Handler; Flags: dontcreatekey deletevalue |
| |
128 |
132 |
Root: HKCU; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Run; ValueType: string; ValueName: Copy Handler; Tasks: startatboot; ValueData: {app}\{code:ExpandArch|ExeFilename}; Flags: uninsdeletevalue |
| |
129 |
133 |
|
| |
130 |
134 |
[Dirs] |
| |
131 |
135 |
Name: {app}\help; Flags: uninsalwaysuninstall |
| |
132 |
136 |
Name: {app}\langs; Flags: uninsalwaysuninstall |
| |
133 |
137 |
|
| |
134 |
|
[_ISTool] |
| |
135 |
|
UseAbsolutePaths=false |
| |
136 |
|
|
| |
137 |
138 |
[CustomMessages] |
| |
138 |
139 |
TranslateCopyHandler=Translate Copy Handler |
| |
139 |
140 |
polish.TranslateCopyHandler=Przetłumacz program Copy Handler |
| |
140 |
141 |
UninstallCopyHandler=Uninstall Copy Handler |
| |
141 |
142 |
polish.UninstallCopyHandler=Odinstaluj program Copy Handler |
| |
142 |
143 |
StartAtBoot=Run program at system startup |
| |
143 |
144 |
polish.StartAtBoot=Uruchom program przy starcie systemu |
| |
144 |
145 |
|
| |
145 |
|
[ThirdPartySettings] |
| |
|
146 |
[ThirdParty] |
| |
146 |
147 |
CompileLogMethod=append |
| |
147 |
148 |
|
| |
148 |
149 |
[Code] |
| |
149 |
150 |
function ExpandArch(ConstantStr: String): String; |
| |
150 |
151 |
begin |
| |
151 |
152 |
if Is64BitInstallMode then |
| |
152 |
153 |
begin |
| |
153 |
154 |
case ConstantStr of |
| |
154 |
155 |
'ExeFilename': Result := '{#ExeFilename64}'; |
| |
155 |
156 |
'ICTranslateFilename': Result := '{#ICTranslateFilename64}'; |
| |
156 |
157 |
end; |
| |
157 |
158 |
end |
| |
158 |
159 |
else |
| |
159 |
160 |
begin |
| |
160 |
161 |
case ConstantStr of |
| |
161 |
162 |
'ExeFilename': Result := '{#ExeFilename32}'; |
| |
162 |
163 |
'ICTranslateFilename': Result := '{#ICTranslateFilename32}'; |
| |
163 |
164 |
end; |
| |
164 |
165 |
end; |
| |
165 |
166 |
end; |
| |
166 |
|
|
| |
167 |
|
[InnoIDE_Settings] |
| |
168 |
|
LogFileOverwrite=false |
| |
169 |
|
|