1 |
maya |
3227 |
#define AppName "Tera Term" |
2 |
doda |
8445 |
#define AppVer "5.0" |
3 |
doda |
8436 |
#define snapshot GetDateTimeString('yyyymmdd_hhnnss', '', ''); |
4 |
maya |
3227 |
|
5 |
maya |
4783 |
[InnoIDE_PreCompile] |
6 |
maya |
7210 |
Name: makechm.bat |
7 |
doda |
8436 |
Name: build.bat |
8 |
|
|
;Name: build.bat; Parameters: rebuild |
9 |
maya |
7210 |
|
10 |
maya |
4783 |
[InnoIDE_PostCompile] |
11 |
doda |
8436 |
;Name: makearchive.bat; Parameters: release |
12 |
maya |
4783 |
|
13 |
|
|
[PreCompile] |
14 |
maya |
7210 |
Name: makechm.bat |
15 |
doda |
8436 |
Name: build.bat |
16 |
|
|
;Name: build.bat; Parameters: rebuild |
17 |
maya |
4783 |
|
18 |
|
|
[PostCompile] |
19 |
doda |
8436 |
;Name: makearchive.bat; Parameters: release |
20 |
maya |
4783 |
|
21 |
|
|
[_ISToolPreCompile] |
22 |
maya |
7210 |
Name: makechm.bat |
23 |
doda |
8436 |
Name: build.bat |
24 |
|
|
;Name: build.bat; Parameters: rebuild |
25 |
maya |
4783 |
|
26 |
|
|
[_ISToolPostCompile] |
27 |
doda |
8436 |
;Name: makearchive.bat; Parameters: release |
28 |
maya |
4783 |
|
29 |
maya |
3227 |
[Setup] |
30 |
zmatsuo |
8932 |
AppCopyright=(C) 2004-2020 TeraTerm Project |
31 |
maya |
7128 |
AppPublisher=TeraTerm Project |
32 |
|
|
AppPublisherURL=https://ttssh2.osdn.jp/ |
33 |
|
|
AppSupportURL=https://ttssh2.osdn.jp/ |
34 |
maya |
3227 |
AppName={#AppName} |
35 |
maya |
3305 |
#ifndef snapshot |
36 |
maya |
7128 |
AppVersion={#AppVer} |
37 |
maya |
3227 |
AppVerName={#AppName} {#AppVer} |
38 |
maya |
3305 |
#else |
39 |
maya |
7128 |
AppVersion={#AppVer}+ snapshot-{#snapshot} |
40 |
maya |
3305 |
AppVerName={#AppName} {#AppVer}+ snapshot-{#snapshot} |
41 |
|
|
#endif |
42 |
maya |
3227 |
LicenseFile=release\license.txt |
43 |
|
|
DefaultDirName={pf}\teraterm |
44 |
|
|
DefaultGroupName={#AppName} |
45 |
|
|
ShowLanguageDialog=yes |
46 |
|
|
AllowNoIcons=true |
47 |
|
|
UninstallDisplayIcon={app}\ttermpro.exe |
48 |
maya |
3305 |
#ifndef snapshot |
49 |
maya |
3227 |
OutputBaseFilename=teraterm-{#AppVer} |
50 |
maya |
3305 |
#else |
51 |
|
|
OutputBaseFilename=teraterm-{#snapshot} |
52 |
|
|
#endif |
53 |
maya |
3227 |
PrivilegesRequired=none |
54 |
doda |
8379 |
SolidCompression=yes |
55 |
|
|
Compression=lzma2/ultra64 |
56 |
maya |
3227 |
|
57 |
|
|
[Languages] |
58 |
|
|
Name: en; MessagesFile: compiler:Default.isl |
59 |
|
|
Name: ja; MessagesFile: compiler:Languages\Japanese.isl |
60 |
|
|
|
61 |
|
|
[Dirs] |
62 |
|
|
Name: {app}\theme; Components: TeraTerm |
63 |
|
|
Name: {app}\theme\scale; Components: TeraTerm |
64 |
|
|
Name: {app}\theme\tile; Components: TeraTerm |
65 |
|
|
Name: {app}\plugin; Components: TeraTerm |
66 |
|
|
Name: {app}\lang; Components: TeraTerm |
67 |
zmatsuo |
9389 |
Name: {app}\lang_utf16le; Components: TeraTerm |
68 |
maya |
3227 |
|
69 |
|
|
[Files] |
70 |
|
|
Source: ..\teraterm\release\ttermpro.exe; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion |
71 |
maya |
7114 |
Source: ..\teraterm\release\ttpcmn.dll; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion |
72 |
|
|
Source: ..\teraterm\release\ttpset.dll; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion |
73 |
|
|
Source: ..\teraterm\release\ttptek.dll; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion |
74 |
maya |
3227 |
Source: release\TERATERM.INI; DestDir: {app}; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify |
75 |
yutakapon |
8293 |
Source: release\TSPECIAL1.TTF; DestDir: {fonts}; Components: TeraTerm; Attribs: readonly; Flags: onlyifdoesntexist overwritereadonly uninsneveruninstall; FontInstall: Tera Special; Check: isAbleToInstallFont |
76 |
|
|
;Source: release\TSPECIAL1.TTF; DestDir: {app}; Components: TeraTerm |
77 |
maya |
3227 |
Source: ..\doc\en\teraterm.chm; DestDir: {app}; Components: TeraTerm |
78 |
maya |
3292 |
Source: ..\doc\ja\teratermj.chm; DestDir: {app}; Components: TeraTerm |
79 |
maya |
3227 |
Source: release\license.txt; DestDir: {app}; Components: TeraTerm |
80 |
|
|
Source: release\FUNCTION.CNF; DestDir: {app}; Components: TeraTerm |
81 |
|
|
Source: release\IBMKEYB.CNF; DestDir: {app}; Components: TeraTerm |
82 |
|
|
Source: release\EDITOR.CNF; DestDir: {app}; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify; DestName: KEYBOARD.CNF |
83 |
|
|
Source: release\EDITOR.CNF; DestDir: {app}; Components: TeraTerm |
84 |
|
|
Source: release\NT98KEYB.CNF; DestDir: {app}; Components: TeraTerm |
85 |
|
|
Source: release\PC98KEYB.CNF; DestDir: {app}; Components: TeraTerm |
86 |
maya |
7114 |
Source: ..\teraterm\release\keycode.exe; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion |
87 |
maya |
3227 |
Source: ..\teraterm\release\ttpmacro.exe; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion |
88 |
|
|
Source: release\delpassw.ttl; DestDir: {app}; Components: TeraTerm |
89 |
|
|
Source: release\dialup.ttl; DestDir: {app}; Components: TeraTerm |
90 |
|
|
Source: release\login.ttl; DestDir: {app}; Components: TeraTerm |
91 |
|
|
Source: release\mpause.ttl; DestDir: {app}; Components: TeraTerm |
92 |
|
|
Source: release\random.ttl; DestDir: {app}; Components: TeraTerm |
93 |
|
|
Source: release\screencapture.ttl; DestDir: {app}; Components: TeraTerm |
94 |
|
|
Source: release\ssh2login.ttl; DestDir: {app}; Components: TeraTerm |
95 |
|
|
Source: release\wait_regex.ttl; DestDir: {app}; Components: TeraTerm |
96 |
maya |
4150 |
Source: release\lang\Default.lng; DestDir: {app}\lang; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify |
97 |
maya |
3227 |
Source: release\lang\Japanese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
98 |
|
|
Source: release\lang\German.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
99 |
maya |
3947 |
Source: release\lang\French.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
100 |
maya |
5136 |
Source: release\lang\Russian.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
101 |
maya |
5246 |
Source: release\lang\Korean.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
102 |
doda |
5421 |
Source: release\lang\Simplified Chinese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
103 |
maya |
5667 |
Source: release\lang\Traditional Chinese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
104 |
zmatsuo |
9371 |
Source: release\lang_utf16le\Default.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify |
105 |
|
|
Source: release\lang_utf16le\Japanese.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
106 |
|
|
Source: release\lang_utf16le\German.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
107 |
|
|
Source: release\lang_utf16le\French.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
108 |
|
|
Source: release\lang_utf16le\Russian.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
109 |
|
|
Source: release\lang_utf16le\Korean.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
110 |
|
|
Source: release\lang_utf16le\Simplified Chinese.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
111 |
|
|
Source: release\lang_utf16le\Traditional Chinese.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly |
112 |
maya |
3227 |
Source: ..\ttssh2\ttxssh\Release\ttxssh.dll; DestDir: {app}; Components: TTSSH; Flags: ignoreversion |
113 |
|
|
Source: release\ssh_known_hosts; DestDir: {app}; Components: TTSSH; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify |
114 |
zmatsuo |
9516 |
Source: ..\cygwin\cygterm\cygterm.exe; DestDir: {app}\cygterm+-i686; Components: cygterm |
115 |
|
|
Source: ..\cygwin\cygterm\cygterm.cfg; DestDir: {app}; Components: cygterm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify |
116 |
|
|
Source: ..\cygwin\cygterm\cygterm+.tar.gz; DestDir: {app}; Components: cygterm |
117 |
|
|
Source: ..\cygwin\cygterm\cygterm+-x86_64\cygterm.exe; DestDir: {app}\cygterm+-x86_64; Components: cygterm |
118 |
|
|
Source: ..\cygwin\Release\cyglaunch.exe; DestDir: {app}; Components: cygterm |
119 |
|
|
Source: ..\cygwin\Release\cygtool.dll; Components: cygterm; Flags: dontcopy |
120 |
|
|
;Source: ..\libs\logmett\Setup_LogMeTT_2_12_1.exe; DestDir: {tmp}; Components: LogMeTT; Flags: deleteafterinstall |
121 |
|
|
;Source: ..\libs\logmett\Setup_TTLEditor_1_5_1.exe; DestDir: {tmp}; Components: TTLEdit; Flags: deleteafterinstall |
122 |
maya |
3227 |
Source: ..\ttpmenu\Release\ttpmenu.exe; DestDir: {app}; Components: TeraTerm_Menu; Flags: ignoreversion |
123 |
|
|
Source: release\ttmenu_readme-j.txt; DestDir: {app}; Components: TeraTerm_Menu |
124 |
|
|
Source: ..\TTProxy\Release\TTXProxy.dll; DestDir: {app}; Components: TTProxy; Flags: ignoreversion |
125 |
|
|
Source: release\theme\Advanced.sample; DestDir: {app}\theme\; Components: TeraTerm |
126 |
yutakapon |
4910 |
Source: release\theme\ImageFile.INI; DestDir: {app}\theme\; Components: TeraTerm |
127 |
maya |
3227 |
Source: release\theme\Scale.INI; DestDir: {app}\theme\; Components: TeraTerm |
128 |
|
|
Source: release\theme\Tile.INI; DestDir: {app}\theme\; Components: TeraTerm |
129 |
|
|
Source: release\theme\scale\23.jpg; DestDir: {app}\theme\scale; Components: TeraTerm |
130 |
|
|
Source: release\theme\scale\43.jpg; DestDir: {app}\theme\scale; Components: TeraTerm |
131 |
|
|
Source: release\theme\tile\03.jpg; DestDir: {app}\theme\tile; Components: TeraTerm |
132 |
|
|
Source: release\theme\tile\44.jpg; DestDir: {app}\theme\tile; Components: TeraTerm |
133 |
|
|
Source: release\plugin\ttAKJpeg.dll; DestDir: {app}\plugin\; Components: TeraTerm |
134 |
|
|
Source: release\plugin\ttAKJpeg.txt; DestDir: {app}\plugin\; Components: TeraTerm |
135 |
|
|
Source: ..\TTXKanjiMenu\release\ttxkanjimenu.dll; DestDir: {app}\; Components: Additional_Plugins/TTXKanjiMenu; Flags: ignoreversion |
136 |
|
|
Source: ..\TTXSamples\release\TTXResizeMenu.dll; DestDir: {app}\; Components: Additional_Plugins/TTXResizeMenu; Flags: ignoreversion |
137 |
|
|
Source: ..\TTXSamples\release\TTXttyrec.dll; DestDir: {app}\; Components: Additional_Plugins/TTXttyrec; Flags: ignoreversion |
138 |
|
|
Source: ..\TTXSamples\release\TTXttyplay.dll; DestDir: {app}\; Components: Additional_Plugins/TTXttyrec; Flags: ignoreversion |
139 |
|
|
Source: ..\TTXSamples\release\TTXKcodeChange.dll; DestDir: {app}\; Components: Additional_Plugins/TTXKcodeChange; Flags: ignoreversion |
140 |
|
|
Source: ..\TTXSamples\release\TTXViewMode.dll; DestDir: {app}\; Components: Additional_Plugins/TTXViewMode; Flags: ignoreversion |
141 |
|
|
Source: ..\TTXSamples\release\TTXAlwaysOnTop.dll; DestDir: {app}\; Components: Additional_Plugins/TTXAlwaysOnTop; Flags: ignoreversion |
142 |
doda |
3256 |
Source: ..\TTXSamples\release\TTXRecurringCommand.dll; DestDir: {app}\; Components: Additional_Plugins/TTXRecurringCommand; Flags: ignoreversion |
143 |
maya |
3227 |
|
144 |
|
|
[Types] |
145 |
|
|
Name: standard; Description: {cm:type_standard} |
146 |
|
|
Name: full; Description: {cm:type_full} |
147 |
|
|
Name: compact; Description: {cm:type_compact} |
148 |
|
|
Name: custom; Description: {cm:type_custom}; Flags: iscustom |
149 |
|
|
|
150 |
|
|
[Components] |
151 |
|
|
Name: TeraTerm; Description: Tera Term & Macro; Flags: fixed; Types: custom compact full standard |
152 |
|
|
Name: TTSSH; Description: TTSSH; Types: compact full standard |
153 |
|
|
Name: cygterm; Description: CygTerm+; Types: full standard; Check: not isIA64 |
154 |
maya |
4617 |
Name: LogMeTT; Description: LogMeTT ({cm:comp_installer}); Types: full; MinVersion: 4.1.1998,4.0.1381sp6 |
155 |
|
|
Name: TTLEdit; Description: TTLEdit ({cm:comp_installer}); Types: full; MinVersion: 4.1.1998,4.0.1381sp6 |
156 |
maya |
3227 |
Name: TeraTerm_Menu; Description: TeraTerm Menu; Types: full |
157 |
|
|
Name: TTProxy; Description: TTProxy; Types: full standard |
158 |
|
|
Name: Additional_Plugins; Description: {cm:comp_TTX} |
159 |
|
|
Name: Additional_Plugins/TTXResizeMenu; Description: TTXResizeMenu ({cm:comp_TTXResizeMenu}); Types: full standard |
160 |
|
|
Name: Additional_Plugins/TTXttyrec; Description: TTXttyrec ({cm:comp_TTXttyrec}); Types: full standard |
161 |
|
|
Name: Additional_Plugins/TTXKanjiMenu; Description: TTXKanjiMenu ({cm:comp_TTXKanjiMenu}); Languages: en |
162 |
|
|
Name: Additional_Plugins/TTXKanjiMenu; Description: TTXKanjiMenu ({cm:comp_TTXKanjiMenu}); Types: full; Languages: ja |
163 |
|
|
Name: Additional_Plugins/TTXKcodeChange; Description: TTXKcodeChange ({cm:comp_TTXKcodeChange}); Languages: en |
164 |
|
|
Name: Additional_Plugins/TTXKcodeChange; Description: TTXKcodeChange ({cm:comp_TTXKcodeChange}); Types: full; Languages: ja |
165 |
|
|
Name: Additional_Plugins/TTXViewMode; Description: TTXViewMode ({cm:comp_TTXViewMode}); Types: full |
166 |
|
|
Name: Additional_Plugins/TTXAlwaysOnTop; Description: TTXAlwaysOnTop ({cm:comp_TTXAlwaysOnTop}); Types: full |
167 |
doda |
3360 |
Name: Additional_Plugins/TTXRecurringCommand; Description: TTXRecurringCommand ({cm:comp_TTXRecurringCommand}); Types: full |
168 |
maya |
3227 |
|
169 |
|
|
[Icons] |
170 |
|
|
Name: {group}\Tera Term; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; IconIndex: 0; Components: TeraTerm; Flags: createonlyiffileexists |
171 |
|
|
Name: {group}\{cm:UninstallProgram,{#AppName}}; Filename: {uninstallexe}; Components: TeraTerm; Flags: createonlyiffileexists |
172 |
|
|
Name: {group}\cyglaunch; Filename: {app}\cyglaunch.exe; WorkingDir: {app}; IconFilename: {app}\cyglaunch.exe; IconIndex: 0; Components: cygterm; Flags: createonlyiffileexists |
173 |
|
|
Name: {group}\TeraTerm Menu; Filename: {app}\ttpmenu.exe; WorkingDir: {app}; IconFilename: {app}\ttpmenu.exe; IconIndex: 0; Components: TeraTerm_Menu; Flags: createonlyiffileexists |
174 |
|
|
Name: {userdesktop}\Tera Term; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; Components: TeraTerm; Tasks: desktopicon; IconIndex: 0; Flags: createonlyiffileexists |
175 |
|
|
Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\Tera Term; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; Components: TeraTerm; Tasks: quicklaunchicon; IconIndex: 0; Flags: createonlyiffileexists |
176 |
|
|
Name: {userstartup}\TeraTerm Menu; Filename: {app}\ttpmenu.exe; WorkingDir: {app}; IconFilename: {app}\ttpmenu.exe; Components: TeraTerm_Menu; IconIndex: 0; Tasks: startupttmenuicon; Flags: createonlyiffileexists |
177 |
|
|
Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\cyglaunch; Filename: {app}\cyglaunch.exe; WorkingDir: {app}; IconFilename: {app}\cyglaunch.exe; Components: cygterm; Tasks: quickcyglaunch; IconIndex: 0; Flags: createonlyiffileexists |
178 |
|
|
|
179 |
|
|
[Registry] |
180 |
|
|
; Cygterm Here |
181 |
maya |
3655 |
Root: HKCU; Subkey: Software\Classes\Folder\shell\cygterm; ValueType: string; ValueData: Cy>erm Here; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: cygterm; Tasks: cygtermhere |
182 |
maya |
4834 |
Root: HKCU; Subkey: Software\Classes\Folder\shell\cygterm\command; ValueType: string; ValueData: """{app}\cyglaunch.exe"" -nocd -v CHERE_INVOKING=y -d ""\""%L\"""""; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: cygterm; Tasks: cygtermhere |
183 |
maya |
3655 |
Root: HKCR; Subkey: Folder\shell\cygterm; ValueType: string; ValueData: Cy>erm Here; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: cygterm; Tasks: cygtermhere |
184 |
maya |
4834 |
Root: HKCR; Subkey: Folder\shell\cygterm\command; ValueType: string; ValueData: """{app}\cyglaunch.exe"" -nocd -v CHERE_INVOKING=y -d ""\""%L\"""""; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: cygterm; Tasks: cygtermhere |
185 |
maya |
4750 |
; Cygterm Here from folder Background |
186 |
|
|
; MinVersion 5.00.0000 = not Win9x, 6.0.6000 = Vista or later |
187 |
maya |
4783 |
Root: HKCU; Subkey: Software\Classes\Directory\Background\shell\cygterm; ValueType: string; ValueData: Cy>erm Here; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere; MinVersion: 5.00.0000,6.0.6000 |
188 |
maya |
4834 |
Root: HKCU; Subkey: Software\Classes\Directory\Background\shell\cygterm\command; ValueType: string; ValueData: """{app}\cyglaunch.exe"" -nocd -v CHERE_INVOKING=y -d ""\""%V\"""""; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere; MinVersion: 5.00.0000,6.0.6000 |
189 |
maya |
4783 |
Root: HKCU; Subkey: Software\Classes\LibraryFolder\Background\shell\cygterm; ValueType: string; ValueData: Cy>erm Here; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere; MinVersion: 5.00.0000,6.0.6000 |
190 |
maya |
4834 |
Root: HKCU; Subkey: Software\Classes\LibraryFolder\Background\shell\cygterm\command; ValueType: string; ValueData: """{app}\cyglaunch.exe"" -nocd -v CHERE_INVOKING=y -d ""\""%V\"""""; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere; MinVersion: 5.00.0000,6.0.6000 |
191 |
maya |
3227 |
; Associate with .TTL |
192 |
maya |
3655 |
Root: HKCU; Subkey: Software\Classes\.ttl; ValueType: string; ValueData: TeraTerm.MacroFile; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
193 |
|
|
Root: HKCU; Subkey: Software\Classes\TeraTerm.MacroFile; ValueType: string; ValueData: Tera Term Macro File; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
194 |
|
|
Root: HKCU; Subkey: Software\Classes\TeraTerm.MacroFile\DefaultIcon; ValueType: string; ValueData: {app}\ttpmacro.exe,0; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
195 |
|
|
Root: HKCU; Subkey: Software\Classes\TeraTerm.MacroFile\shell\open\command; ValueType: string; ValueData: """{app}\ttpmacro.exe"" ""%1"""; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
196 |
|
|
Root: HKCR; Subkey: .ttl; ValueType: string; ValueData: TeraTerm.MacroFile; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
197 |
|
|
Root: HKCR; Subkey: TeraTerm.MacroFile; ValueType: string; ValueData: Tera Term Macro File; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
198 |
|
|
Root: HKCR; Subkey: TeraTerm.MacroFile\DefaultIcon; ValueType: string; ValueData: {app}\ttpmacro.exe,0; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
199 |
|
|
Root: HKCR; Subkey: TeraTerm.MacroFile\shell\open\command; ValueType: string; ValueData: """{app}\ttpmacro.exe"" ""%1"""; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TeraTerm; Tasks: macroassoc |
200 |
maya |
3227 |
; Associate with telnet:// |
201 |
maya |
3655 |
Root: HKCU; Subkey: Software\Classes\telnet\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: isWin2kOrLater; Components: TeraTerm; Tasks: telnetassoc |
202 |
|
|
Root: HKCU; Subkey: Software\Classes\telnet\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" /T=1 /nossh %1"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TeraTerm; Tasks: telnetassoc |
203 |
|
|
Root: HKCR; Subkey: telnet\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: not isWin2kOrLater; Components: TeraTerm; Tasks: telnetassoc |
204 |
|
|
Root: HKCR; Subkey: telnet\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" /T=1 /nossh %1"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TeraTerm; Tasks: telnetassoc |
205 |
maya |
3227 |
; Associate with ssh:// |
206 |
maya |
3655 |
Root: HKCU; Subkey: Software\Classes\ssh; ValueType: string; ValueData: URL: SSH Protocol; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
207 |
|
|
Root: HKCU; Subkey: Software\Classes\ssh; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
208 |
|
|
Root: HKCU; Subkey: Software\Classes\ssh; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
209 |
|
|
Root: HKCU; Subkey: Software\Classes\ssh\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
210 |
|
|
Root: HKCU; Subkey: Software\Classes\ssh\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
211 |
|
|
Root: HKCR; Subkey: ssh; ValueType: string; ValueData: URL: SSH Protocol; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
212 |
|
|
Root: HKCR; Subkey: ssh; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
213 |
|
|
Root: HKCR; Subkey: ssh; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
214 |
|
|
Root: HKCR; Subkey: ssh\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
215 |
|
|
Root: HKCR; Subkey: ssh\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
216 |
|
|
; Associate with slogin:// |
217 |
|
|
Root: HKCU; Subkey: Software\Classes\slogin; ValueType: string; ValueData: URL: slogin Protocol; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
218 |
|
|
Root: HKCU; Subkey: Software\Classes\slogin; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
219 |
|
|
Root: HKCU; Subkey: Software\Classes\slogin; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
220 |
|
|
Root: HKCU; Subkey: Software\Classes\slogin\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
221 |
|
|
Root: HKCU; Subkey: Software\Classes\slogin\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
222 |
|
|
Root: HKCR; Subkey: slogin; ValueType: string; ValueData: URL: slogin Protocol; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
223 |
|
|
Root: HKCR; Subkey: slogin; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
224 |
|
|
Root: HKCR; Subkey: slogin; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
225 |
|
|
Root: HKCR; Subkey: slogin\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
226 |
|
|
Root: HKCR; Subkey: slogin\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc |
227 |
doda |
3345 |
; Associate with .TTY |
228 |
maya |
3655 |
Root: HKCU; Subkey: Software\Classes\.tty; ValueType: string; ValueData: TTYRecordFile; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
229 |
|
|
Root: HKCU; Subkey: Software\Classes\TTYRecordFile; ValueType: string; ValueData: TTY Record File; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
230 |
|
|
Root: HKCU; Subkey: Software\Classes\TTYRecordFile\DefaultIcon; ValueType: string; ValueData: {app}\ttermpro.exe,0; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
231 |
|
|
Root: HKCU; Subkey: Software\Classes\TTYRecordFile\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" /R=""%1"" /TTYPLAY"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
232 |
|
|
Root: HKCR; Subkey: .tty; ValueType: string; ValueData: TTYRecordFile; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
233 |
|
|
Root: HKCR; Subkey: TTYRecordFile; ValueType: string; ValueData: TTY Record File; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
234 |
|
|
Root: HKCR; Subkey: TTYRecordFile\DefaultIcon; ValueType: string; ValueData: {app}\ttermpro.exe,0; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
235 |
|
|
Root: HKCR; Subkey: TTYRecordFile\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" /R=""%1"" /TTYPLAY"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc |
236 |
maya |
3227 |
|
237 |
|
|
[Tasks] |
238 |
|
|
Name: desktopicon; Description: {cm:task_desktopicon}; Components: TeraTerm |
239 |
|
|
Name: quicklaunchicon; Description: {cm:task_quicklaunchicon}; Components: TeraTerm |
240 |
|
|
Name: startupttmenuicon; Description: {cm:task_startupttmenuicon}; Components: TeraTerm_Menu |
241 |
|
|
Name: cygtermhere; Description: {cm:task_cygtermhere}; Components: cygterm; Flags: unchecked |
242 |
|
|
Name: quickcyglaunch; Description: {cm:task_quickcyglaunch}; Components: cygterm; Flags: unchecked |
243 |
|
|
Name: macroassoc; Description: {cm:task_macroassoc}; Components: TeraTerm; Flags: unchecked |
244 |
|
|
Name: telnetassoc; Description: {cm:task_telnetassoc}; Components: TeraTerm; Flags: unchecked |
245 |
|
|
Name: sshassoc; Description: {cm:task_sshassoc}; Components: TTSSH; Flags: unchecked |
246 |
doda |
3345 |
Name: ttyplayassoc; Description: {cm:task_ttyplayassoc}; Components: Additional_Plugins/TTXttyrec; Flags: unchecked |
247 |
maya |
3227 |
|
248 |
|
|
[Run] |
249 |
maya |
5131 |
Filename: {app}\ttermpro.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_teraterm}; Components: TeraTerm |
250 |
doda |
6596 |
Filename: {tmp}\Setup_LogMeTT_2_12_1.exe; Flags: skipifsilent runasoriginaluser; Components: LogMeTT |
251 |
|
|
Filename: {tmp}\Setup_LogMeTT_2_12_1.exe; Parameters: /SILENT; Flags: skipifnotsilent runasoriginaluser; Components: LogMeTT |
252 |
|
|
Filename: {tmp}\Setup_TTLEditor_1_5_1.exe; Flags: skipifsilent runasoriginaluser; Components: TTLEdit |
253 |
|
|
Filename: {tmp}\Setup_TTLEditor_1_5_1.exe; Parameters: /SILENT; Flags: skipifnotsilent runasoriginaluser; Components: TTLEdit |
254 |
maya |
5131 |
Filename: {app}\ttpmenu.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_ttmenu}; Components: TeraTerm_Menu |
255 |
maya |
3227 |
|
256 |
|
|
[CustomMessages] |
257 |
|
|
en.task_desktopicon=Create Tera Term shortcut to &Desktop |
258 |
|
|
en.task_quicklaunchicon=Create Tera Term shortcut to &Quick Launch |
259 |
|
|
en.task_startupttmenuicon=Create TeraTerm &Menu shortcut to Startup |
260 |
|
|
en.task_cygtermhere=Add "Cy>erm Here" to Context menu |
261 |
|
|
en.task_quickcyglaunch=Create cyg&launch shortcut to Quick Launch |
262 |
|
|
en.task_macroassoc=Associate .&ttl file to ttpmacro.exe |
263 |
|
|
en.task_telnetassoc=Associate t&elnet protocol to ttermpro.exe |
264 |
|
|
en.task_sshassoc=Associate &ssh protocol to ttermpro.exe |
265 |
doda |
3345 |
en.task_ttyplayassoc=Associate .tty file to tterm&pro.exe |
266 |
maya |
3227 |
ja.task_desktopicon=�f�X�N�g�b�v�� Tera Term ���V���[�g�J�b�g������(&D) |
267 |
|
|
ja.task_quicklaunchicon=�N�C�b�N�N���� Tera Term ���V���[�g�J�b�g������(&Q) |
268 |
|
|
ja.task_startupttmenuicon=�X�^�[�g�A�b�v�� TeraTerm &Menu ���V���[�g�J�b�g������ |
269 |
|
|
ja.task_cygtermhere=�R���e�L�X�g���j���[�� "Cy>erm Here" ���������� |
270 |
|
|
ja.task_quickcyglaunch=�N�C�b�N�N���� cyg&launch ���V���[�g�J�b�g������ |
271 |
|
|
ja.task_macroassoc=.&ttl �t�@�C���� ttpmacro.exe �����A�t���� |
272 |
|
|
ja.task_telnetassoc=t&elnet �v���g�R���� ttermpro.exe �����A�t���� |
273 |
|
|
ja.task_sshassoc=&ssh �v���g�R���� ttermpro.exe �����A�t���� |
274 |
maya |
3653 |
ja.task_ttyplayassoc=.tty �t�@�C���� tterm&pro.exe �����A�t���� |
275 |
maya |
3227 |
en.type_standard=Standard installation |
276 |
|
|
en.type_full=Full installation |
277 |
|
|
en.type_compact=Compact installation |
278 |
|
|
en.type_custom=Custom installation |
279 |
|
|
ja.type_standard=�W���C���X�g�[�� |
280 |
|
|
ja.type_full=�t���C���X�g�[�� |
281 |
|
|
ja.type_compact=�R���p�N�g�C���X�g�[�� |
282 |
|
|
ja.type_custom=�J�X�^���C���X�g�[�� |
283 |
|
|
en.launch_teraterm=Launch &Tera Term |
284 |
|
|
en.launch_ttmenu=Launch TeraTerm &Menu |
285 |
|
|
ja.launch_teraterm=������ &Tera Term �����s���� |
286 |
|
|
ja.launch_ttmenu=������ TeraTerm &Menu �����s���� |
287 |
|
|
en.msg_language_caption=Select Language |
288 |
|
|
en.msg_language_description=Which language shoud be used? |
289 |
|
|
en.msg_language_subcaption=Select the language of application's menu and dialog, then click Next. |
290 |
|
|
en.msg_language_none=&English |
291 |
|
|
en.msg_language_japanese=&Japanese |
292 |
|
|
en.msg_language_german=&German |
293 |
maya |
3947 |
en.msg_language_french=&French |
294 |
maya |
5136 |
en.msg_language_russian=&Russian |
295 |
maya |
5246 |
en.msg_language_korean=&Korean |
296 |
doda |
5421 |
en.msg_language_chinese=&Chinese(Simplified) |
297 |
maya |
5667 |
en.msg_language_tchinese=Chinese(&Traditional) |
298 |
maya |
3227 |
ja.msg_language_caption=�������I�� |
299 |
|
|
ja.msg_language_description=���[�U�[�C���^�[�t�F�[�X���������I���������������B |
300 |
|
|
ja.msg_language_subcaption=�A�v���P�[�V���������j���[���_�C�A���O�����\���������I�������A�u�����v���N���b�N�������������B |
301 |
|
|
ja.msg_language_none=�p��(&E) |
302 |
|
|
ja.msg_language_japanese=���{��(&J) |
303 |
|
|
ja.msg_language_german=�h�C�c��(&G) |
304 |
maya |
3947 |
ja.msg_language_french=�t�����X��(&F) |
305 |
maya |
5136 |
ja.msg_language_russian=���V�A��(&R) |
306 |
maya |
5246 |
ja.msg_language_korean=������(&K) |
307 |
doda |
5421 |
ja.msg_language_chinese=������������(&C) |
308 |
maya |
5667 |
ja.msg_language_tchinese=������������(&T) |
309 |
maya |
3227 |
en.msg_del_confirm=Are you sure that you want to delete %s ? |
310 |
|
|
ja.msg_del_confirm=%s ���������������H |
311 |
|
|
en.msg_uninstall_confirm=It seems a former version is installed. You are recommended to uninstall it previously. Do you uninstall former version ? |
312 |
|
|
ja.msg_uninstall_confirm=���O���o�[�W�������C���X�g�[���������������������B�����A���C���X�g�[�������������������������B�A���C���X�g�[�����������H |
313 |
|
|
en.comp_TTX=Additional Plugins |
314 |
|
|
ja.comp_TTX=�����v���O�C�� |
315 |
|
|
en.comp_TTXResizeMenu=VT-Window size can be changed from preset |
316 |
|
|
ja.comp_TTXResizeMenu=VT�E�B���h�E���T�C�Y���v���Z�b�g�l�����������X���������������� |
317 |
|
|
en.comp_TTXttyrec=ttyrec format record data can be recorded or playback |
318 |
|
|
ja.comp_TTXttyrec=ttyrec�`�����^���f�[�^���L�^/�������������������� |
319 |
|
|
en.comp_TTXKanjiMenu=Changes Japanese Kanji Code from VT-Window menu |
320 |
|
|
ja.comp_TTXKanjiMenu=���{���������R�[�h��VT�E�B���h�E�����j���[������������������������ |
321 |
|
|
en.comp_TTXKcodeChange=Change Japanese Kanji code by remote sequence |
322 |
|
|
ja.comp_TTXKcodeChange=�����[�g�������V�[�P���X�����{���������R�[�h�����X���� |
323 |
|
|
en.comp_TTXViewMode=View-only mode can be used |
324 |
|
|
ja.comp_TTXViewMode=�\�����p���[�h������������������ |
325 |
|
|
en.comp_TTXAlwaysOnTop=Always On Top can be used |
326 |
|
|
ja.comp_TTXAlwaysOnTop=�������O�����\������������������ |
327 |
doda |
3256 |
en.comp_TTXRecurringCommand=Recurring Command can be used |
328 |
|
|
ja.comp_TTXRecurringCommand=�����I�������������M���� |
329 |
maya |
4617 |
en.comp_installer=Other installer is started |
330 |
|
|
ja.comp_installer=�C���X�g�[�����N�������� |
331 |
maya |
4356 |
en.msg_AppRunningError=Setup has detected that %s is currently running.%n%nPlease close all instances of it now, then click Next to continue. |
332 |
|
|
ja.msg_AppRunningError=�Z�b�g�A�b�v�����s���� %s �����o���������B%n%n�J���������A�v���P�[�V�����������������������u�����v���N���b�N�������������B |
333 |
maya |
3227 |
|
334 |
|
|
[Code] |
335 |
maya |
3652 |
const |
336 |
|
|
SHCNF_IDLIST = $0000; |
337 |
|
|
SHCNE_ASSOCCHANGED = $08000000; |
338 |
maya |
5665 |
IMAGE_FILE_MACHINE_UNKNOWN = $0000; |
339 |
|
|
IMAGE_FILE_MACHINE_I386 = $014c; |
340 |
|
|
IMAGE_FILE_MACHINE_AMD64 = $8664; |
341 |
maya |
3652 |
|
342 |
|
|
procedure SHChangeNotify(wEventId, uFlags, dwItem1, dwItem2: Integer); |
343 |
|
|
external 'SHChangeNotify@shell32.dll stdcall'; |
344 |
|
|
|
345 |
maya |
5665 |
function FindCygwinPath(CygwinDirectory, CygwinDir: AnsiString; Dirlen: Cardinal): Integer; |
346 |
|
|
external 'FindCygwinPath@files:cygtool.dll stdcall setuponly'; |
347 |
|
|
|
348 |
maya |
5732 |
function PortableExecutableMachine(CygwinDir: AnsiString): Integer; |
349 |
|
|
external 'PortableExecutableMachine@files:cygtool.dll stdcall setuponly'; |
350 |
maya |
5665 |
|
351 |
maya |
3227 |
var |
352 |
|
|
UILangFilePage: TInputOptionWizardPage; |
353 |
|
|
|
354 |
|
|
|
355 |
maya |
3655 |
// It is different from x64 |
356 |
maya |
3227 |
function isIA64 : Boolean; |
357 |
|
|
begin |
358 |
|
|
if ProcessorArchitecture = paIA64 then |
359 |
|
|
Result := True |
360 |
|
|
else |
361 |
|
|
Result := False; |
362 |
|
|
end; |
363 |
|
|
|
364 |
maya |
3655 |
// Windows 2000 or later |
365 |
|
|
function isWin2kOrLater : Boolean; |
366 |
maya |
3227 |
var |
367 |
|
|
Version: TWindowsVersion; |
368 |
|
|
begin; |
369 |
|
|
GetWindowsVersionEx(Version); |
370 |
|
|
if Version.Major >= 5 then |
371 |
|
|
Result := True |
372 |
|
|
else |
373 |
|
|
Result := False; |
374 |
|
|
end; |
375 |
|
|
|
376 |
maya |
3655 |
// Window 9x or NT 4.0 or (Admins or PowerUsers) |
377 |
|
|
function isAbleToInstallFont : Boolean; |
378 |
maya |
3227 |
begin; |
379 |
|
|
if not UsingWinNT() then begin |
380 |
|
|
Result := True; |
381 |
|
|
end else begin |
382 |
maya |
3655 |
if isWin2kOrLater() then begin |
383 |
maya |
3227 |
if IsAdminLoggedOn() or IsPowerUserLoggedOn() then begin |
384 |
|
|
Result := True; |
385 |
|
|
end else begin |
386 |
|
|
Result := False |
387 |
|
|
end; |
388 |
|
|
end else begin |
389 |
|
|
Result := True; |
390 |
|
|
end; |
391 |
|
|
end; |
392 |
|
|
end; |
393 |
|
|
|
394 |
maya |
3948 |
{ |
395 |
|
|
// If value is not found in INI, returns "" |
396 |
|
|
function GetIniString2(Section:String; Key:String; Filename:String) : String; |
397 |
|
|
var |
398 |
|
|
Default1: String; |
399 |
|
|
Default2: String; |
400 |
|
|
Value1: String; |
401 |
|
|
Value2: String; |
402 |
|
|
begin |
403 |
|
|
Default1 := 'on'; |
404 |
|
|
Default2 := 'off'; |
405 |
|
|
Value1 := GetIniString(Section, Key, Default1, Filename); |
406 |
|
|
Value2 := GetIniString(Section, Key, Default2, Filename); |
407 |
|
|
|
408 |
|
|
if Value1 <> Value2 then |
409 |
|
|
// no value in INI |
410 |
|
|
Result := '' |
411 |
|
|
else |
412 |
|
|
// value in INI |
413 |
|
|
Result := Value1 |
414 |
|
|
end; |
415 |
|
|
} |
416 |
|
|
|
417 |
maya |
4356 |
function CheckFileUsing(Filename:String) : integer; |
418 |
maya |
4354 |
var |
419 |
|
|
TmpFileName : String; |
420 |
|
|
begin |
421 |
|
|
if FileExists(FileName) then |
422 |
|
|
begin |
423 |
|
|
TmpFileName := FileName + '.' + GetDateTimeString('yyyymmddhhnnss', #0, #0); // Tmp file ends with timestamp |
424 |
|
|
if FileCopy(FileName, TmpFileName, True) then |
425 |
|
|
if DeleteFile(FileName) then |
426 |
|
|
if RenameFile(TmpFileName, FileName) then |
427 |
|
|
Result := 0 |
428 |
|
|
else |
429 |
|
|
Result := -1 // permission? |
430 |
|
|
else |
431 |
|
|
begin |
432 |
|
|
Result := 1; // failed to delete |
433 |
|
|
DeleteFile(TmpFileName); |
434 |
|
|
end |
435 |
|
|
else |
436 |
|
|
Result := -1 // permission? |
437 |
|
|
end |
438 |
|
|
else |
439 |
|
|
Result := 0; |
440 |
|
|
end; |
441 |
|
|
|
442 |
maya |
4356 |
function CheckAppsUsing() : string; |
443 |
maya |
4354 |
var |
444 |
|
|
FileDir : String; |
445 |
|
|
FileName : array[0..6] of String; |
446 |
maya |
4356 |
FileDesc : array[0..6] of String; |
447 |
maya |
4354 |
i : integer; |
448 |
|
|
begin |
449 |
|
|
FileDir := ExpandConstant('{app}'); |
450 |
|
|
FileName[0] := FileDir + '\ttermpro.exe'; |
451 |
|
|
FileName[1] := FileDir + '\ttpmacro.exe'; |
452 |
|
|
FileName[2] := FileDir + '\keycode.exe'; |
453 |
|
|
FileName[3] := FileDir + '\ttpmenu.exe'; |
454 |
|
|
FileName[4] := FileDir + '\cygterm.exe'; |
455 |
maya |
4356 |
FileDesc[0] := 'Tera Term'; |
456 |
|
|
FileDesc[1] := 'Tera Term Macro'; |
457 |
|
|
FileDesc[2] := 'Keycode'; |
458 |
|
|
FileDesc[3] := 'TeraTerm Menu'; |
459 |
|
|
FileDesc[4] := 'CygTerm+'; |
460 |
maya |
4783 |
|
461 |
nmaya |
9585 |
for i := 0 to 4 do |
462 |
maya |
4354 |
begin |
463 |
maya |
4356 |
case CheckFileUsing(FileName[i]) of |
464 |
|
|
1: |
465 |
|
|
// Failed to delete. In use. |
466 |
|
|
begin |
467 |
|
|
if Length(Result) > 0 then |
468 |
|
|
Result := Result + ', ' + FileDesc[i] |
469 |
|
|
else |
470 |
|
|
Result := FileDesc[i] |
471 |
|
|
end; |
472 |
|
|
else |
473 |
|
|
// -1: Failed to copy/rename |
474 |
|
|
// 0: OK |
475 |
|
|
// NOP |
476 |
maya |
4354 |
end; |
477 |
|
|
end; |
478 |
|
|
|
479 |
|
|
end; |
480 |
|
|
|
481 |
maya |
3227 |
function GetDefaultIniFilename : String; |
482 |
|
|
begin |
483 |
|
|
Result := ExpandConstant('{app}') + '\TERATERM.INI'; |
484 |
|
|
end; |
485 |
|
|
|
486 |
|
|
procedure SetIniFile(iniFile: String); |
487 |
|
|
var |
488 |
maya |
4134 |
Language : String; |
489 |
|
|
Locale : String; |
490 |
|
|
CodePage : integer; |
491 |
|
|
VTFont : String; |
492 |
|
|
TEKFont : String; |
493 |
|
|
FileDir : String; |
494 |
|
|
TCPPort : integer; |
495 |
|
|
ViewlogEditor : String; |
496 |
maya |
6034 |
CipherOrder : String; |
497 |
maya |
3227 |
|
498 |
|
|
begin |
499 |
maya |
4134 |
Language := GetIniString('Tera Term', 'Language', '', iniFile); |
500 |
|
|
Locale := GetIniString('Tera Term', 'Locale', '', iniFile); |
501 |
|
|
CodePage := GetIniInt('Tera Term', 'CodePage', 0, 0, 0, iniFile); |
502 |
|
|
VTFont := GetIniString('Tera Term', 'VTFont', '', iniFile); |
503 |
|
|
TEKFont := GetIniString('Tera Term', 'TEKFont', '', iniFile); |
504 |
|
|
FileDir := GetIniString('Tera Term', 'FileDir', '', iniFile); |
505 |
maya |
4473 |
TCPPort := GetIniInt('Tera Term', 'TCPPort', 0, 0, 65535, iniFile) |
506 |
maya |
4134 |
ViewlogEditor := GetIniString('Tera Term', 'ViewlogEditor', '', iniFile); |
507 |
maya |
6034 |
CipherOrder := GetIniString('TTSSH', 'CipherOrder', '', iniFile); |
508 |
maya |
3227 |
|
509 |
|
|
case GetUILanguage and $3FF of |
510 |
|
|
$04: // Chinese |
511 |
|
|
begin |
512 |
maya |
5667 |
|
513 |
|
|
case GetUILanguage of |
514 |
|
|
$c04, $1404, $404: // Hong Kong, Macao, Taiwan |
515 |
|
|
begin |
516 |
|
|
if Length(Locale) = 0 then |
517 |
|
|
SetIniString('Tera Term', 'Locale', 'cht', iniFile); |
518 |
|
|
if CodePage = 0 then |
519 |
|
|
SetIniInt('Tera Term', 'CodePage', 950, iniFile); |
520 |
|
|
end; |
521 |
|
|
else |
522 |
|
|
begin |
523 |
|
|
if Length(Locale) = 0 then |
524 |
|
|
SetIniString('Tera Term', 'Locale', 'chs', iniFile); |
525 |
|
|
if CodePage = 0 then |
526 |
|
|
SetIniInt('Tera Term', 'CodePage', 936, iniFile); |
527 |
|
|
end; |
528 |
|
|
end; |
529 |
|
|
|
530 |
maya |
3227 |
if Length(Language) = 0 then |
531 |
maya |
3961 |
SetIniString('Tera Term', 'Language', 'UTF-8', iniFile); |
532 |
maya |
3227 |
if Length(VTFont) = 0 then |
533 |
|
|
SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile); |
534 |
|
|
if Length(TEKFont) = 0 then |
535 |
|
|
SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile); |
536 |
|
|
end; |
537 |
|
|
$11: // Japanese |
538 |
|
|
begin |
539 |
|
|
if Length(Language) = 0 then |
540 |
|
|
SetIniString('Tera Term', 'Language', 'Japanese', iniFile); |
541 |
|
|
if Length(Locale) = 0 then |
542 |
|
|
SetIniString('Tera Term', 'Locale', 'japanese', iniFile); |
543 |
|
|
if CodePage = 0 then |
544 |
|
|
SetIniInt('Tera Term', 'CodePage', 932, iniFile); |
545 |
|
|
if Length(VTFont) = 0 then |
546 |
maya |
4615 |
SetIniString('Tera Term', 'VTFont', 'Terminal,0,-19,128', iniFile); |
547 |
maya |
3227 |
if Length(TEKFont) = 0 then |
548 |
|
|
SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,128', iniFile); |
549 |
|
|
end; |
550 |
doda |
3355 |
$12: // Korean |
551 |
|
|
begin |
552 |
|
|
if Length(Language) = 0 then |
553 |
|
|
SetIniString('Tera Term', 'Language', 'Korean', iniFile); |
554 |
|
|
if Length(Locale) = 0 then |
555 |
|
|
SetIniString('Tera Term', 'Locale', 'korean', iniFile); |
556 |
|
|
if CodePage = 0 then |
557 |
|
|
SetIniInt('Tera Term', 'CodePage', 949, iniFile); |
558 |
|
|
if Length(VTFont) = 0 then |
559 |
|
|
SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile); |
560 |
|
|
if Length(TEKFont) = 0 then |
561 |
|
|
SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile); |
562 |
|
|
end; |
563 |
maya |
3227 |
$19: // Russian |
564 |
|
|
begin |
565 |
|
|
if Length(Language) = 0 then |
566 |
|
|
SetIniString('Tera Term', 'Language', 'Russian', iniFile); |
567 |
|
|
if Length(Locale) = 0 then |
568 |
|
|
SetIniString('Tera Term', 'Locale', 'russian', iniFile); |
569 |
|
|
if CodePage = 0 then |
570 |
|
|
SetIniInt('Tera Term', 'CodePage', 1251, iniFile); |
571 |
|
|
if Length(VTFont) = 0 then |
572 |
|
|
SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile); |
573 |
|
|
if Length(TEKFont) = 0 then |
574 |
|
|
SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile); |
575 |
|
|
end; |
576 |
|
|
else // Other |
577 |
|
|
begin |
578 |
|
|
|
579 |
|
|
if GetUILanguage = $409 then begin // en-US |
580 |
|
|
|
581 |
|
|
if Length(Language) = 0 then |
582 |
maya |
3961 |
SetIniString('Tera Term', 'Language', 'UTF-8', iniFile); |
583 |
maya |
3227 |
if Length(Locale) = 0 then |
584 |
|
|
SetIniString('Tera Term', 'Locale', 'american', iniFile); |
585 |
|
|
if CodePage = 0 then |
586 |
|
|
SetIniInt('Tera Term', 'CodePage', 65001, iniFile); |
587 |
|
|
|
588 |
|
|
end else begin // Other |
589 |
|
|
|
590 |
|
|
if Length(Language) = 0 then |
591 |
|
|
SetIniString('Tera Term', 'Language', 'English', iniFile); |
592 |
|
|
if Length(Locale) = 0 then |
593 |
|
|
SetIniString('Tera Term', 'Locale', 'english', iniFile); |
594 |
|
|
if CodePage = 0 then |
595 |
|
|
SetIniInt('Tera Term', 'CodePage', 1252, iniFile); |
596 |
|
|
|
597 |
|
|
end; |
598 |
|
|
|
599 |
|
|
if Length(VTFont) = 0 then |
600 |
|
|
SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile); |
601 |
|
|
if Length(TEKFont) = 0 then |
602 |
|
|
SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile); |
603 |
|
|
end; |
604 |
|
|
end; |
605 |
|
|
|
606 |
|
|
case UILangFilePage.SelectedValueIndex of |
607 |
|
|
1: |
608 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\Japanese.lng', iniFile); |
609 |
|
|
2: |
610 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\German.lng', iniFile); |
611 |
maya |
3947 |
3: |
612 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\French.lng', iniFile); |
613 |
maya |
5136 |
4: |
614 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\Russian.lng', iniFile); |
615 |
maya |
5246 |
5: |
616 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\Korean.lng', iniFile); |
617 |
doda |
5421 |
6: |
618 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\Simplified Chinese.lng', iniFile); |
619 |
maya |
5667 |
7: |
620 |
|
|
SetIniString('Tera Term', 'UILanguageFile', 'lang\Traditional Chinese.lng', iniFile); |
621 |
maya |
3227 |
else |
622 |
maya |
4150 |
SetIniString('Tera Term', 'UILanguageFile', 'lang\Default.lng', iniFile); |
623 |
maya |
3227 |
end; |
624 |
|
|
|
625 |
|
|
if Length(FileDir) = 0 then begin |
626 |
|
|
FileDir := ExpandConstant('{app}'); |
627 |
|
|
SetIniString('Tera Term', 'FileDir', FileDir, iniFile); |
628 |
|
|
end; |
629 |
|
|
|
630 |
maya |
3536 |
if TCPPort = 0 then begin |
631 |
|
|
if IsComponentSelected('TTSSH') then |
632 |
|
|
SetIniInt('Tera Term', 'TCPPort', 22, iniFile) |
633 |
|
|
else |
634 |
|
|
SetIniInt('Tera Term', 'TCPPort', 23, iniFile); |
635 |
|
|
end; |
636 |
|
|
|
637 |
maya |
4134 |
if ViewlogEditor = 'notepad.exe' then begin |
638 |
|
|
ViewlogEditor := ExpandConstant('{win}') + '\' + 'notepad.exe'; |
639 |
|
|
SetIniString('Tera Term', 'ViewlogEditor', ViewlogEditor, iniFile); |
640 |
|
|
end; |
641 |
|
|
|
642 |
maya |
6034 |
if IsComponentSelected('TTSSH') then |
643 |
|
|
begin |
644 |
|
|
CipherOrder := GetIniString('TTSSH', 'CipherOrder', '', iniFile); |
645 |
|
|
if (CompareStr(CipherOrder, 'K>H:J=G9I<F8C7D;A@?EB3062') = 0) or |
646 |
|
|
(CompareStr(CipherOrder, '>:=9<8C7D;A@?EB3062') = 0) or |
647 |
|
|
(CompareStr(CipherOrder, '>:=9<87;A@?B3026') = 0) or |
648 |
|
|
(CompareStr(CipherOrder, '>:=9<87;A@?3026') = 0) or |
649 |
|
|
(CompareStr(CipherOrder, '>:=9<87;?3026') = 0) or |
650 |
|
|
(CompareStr(CipherOrder, '<8=9>:7;3026') = 0) or |
651 |
|
|
(CompareStr(CipherOrder, '87;9:<=>3026') = 0) or |
652 |
|
|
(CompareStr(CipherOrder, '87;9:3026') = 0) or |
653 |
|
|
(CompareStr(CipherOrder, '873026') = 0) then |
654 |
|
|
SetIniString('TTSSH', 'CipherOrder', 'K>H:J=G9I<F8C7D;EB30A@?62', iniFile) |
655 |
|
|
end; |
656 |
|
|
|
657 |
maya |
3227 |
end; |
658 |
|
|
|
659 |
|
|
procedure InitializeWizard; |
660 |
|
|
var |
661 |
|
|
UILangFilePageCaption : String; |
662 |
|
|
UILangFilePageDescription : String; |
663 |
|
|
UILangFilePageSubCaption : String; |
664 |
|
|
UILangFilePageNone : String; |
665 |
|
|
UILangFilePageJapanese : String; |
666 |
|
|
UILangFilePageGerman : String; |
667 |
maya |
3947 |
UILangFilePageFrench : String; |
668 |
maya |
5136 |
UILangFilePageRussian : String; |
669 |
maya |
5246 |
UILangFilePageKorean : String; |
670 |
doda |
5421 |
UILangFilePageChinese : String; |
671 |
maya |
5667 |
UILangFilePageTChinese : String; |
672 |
maya |
3227 |
begin |
673 |
|
|
UILangFilePageCaption := CustomMessage('msg_language_caption'); |
674 |
|
|
UILangFilePageDescription := CustomMessage('msg_language_description'); |
675 |
|
|
UILangFilePageSubCaption := CustomMessage('msg_language_subcaption'); |
676 |
|
|
UILangFilePageNone := CustomMessage('msg_language_none'); |
677 |
|
|
UILangFilePageJapanese := CustomMessage('msg_language_japanese'); |
678 |
|
|
UILangFilePageGerman := CustomMessage('msg_language_german'); |
679 |
maya |
3947 |
UILangFilePageFrench := CustomMessage('msg_language_french'); |
680 |
maya |
5136 |
UILangFilePageRussian := CustomMessage('msg_language_russian'); |
681 |
maya |
5246 |
UILangFilePageKorean := CustomMessage('msg_language_korean'); |
682 |
doda |
5421 |
UILangFilePageChinese := CustomMessage('msg_language_chinese'); |
683 |
maya |
5667 |
UILangFilePageTChinese := CustomMessage('msg_language_tchinese'); |
684 |
maya |
3227 |
|
685 |
|
|
UILangFilePage := CreateInputOptionPage(wpSelectComponents, |
686 |
|
|
UILangFilePageCaption, UILangFilePageDescription, |
687 |
|
|
UILangFilePageSubCaption, True, False); |
688 |
|
|
UILangFilePage.Add(UILangFilePageNone); |
689 |
|
|
UILangFilePage.Add(UILangFilePageJapanese); |
690 |
|
|
UILangFilePage.Add(UILangFilePageGerman); |
691 |
maya |
3947 |
UILangFilePage.Add(UILangFilePageFrench); |
692 |
maya |
5136 |
UILangFilePage.Add(UILangFilePageRussian); |
693 |
maya |
5246 |
UILangFilePage.Add(UILangFilePageKorean); |
694 |
doda |
5421 |
UILangFilePage.Add(UILangFilePageChinese); |
695 |
maya |
5667 |
UILangFilePage.Add(UILangFilePageTChinese); |
696 |
maya |
3227 |
case ActiveLanguage of |
697 |
|
|
'ja': |
698 |
|
|
UILangFilePage.SelectedValueIndex := 1; |
699 |
maya |
4210 |
// �������������V�������]���������������A���{�������������� |
700 |
maya |
3227 |
else |
701 |
|
|
UILangFilePage.SelectedValueIndex := 0; |
702 |
|
|
end; |
703 |
|
|
end; |
704 |
|
|
|
705 |
|
|
function NextButtonClick(CurPageID: Integer): Boolean; |
706 |
|
|
var |
707 |
|
|
uninstaller : String; |
708 |
|
|
uninstaller2 : String; |
709 |
maya |
4356 |
ResultCode : Integer; |
710 |
|
|
iniFile : String; |
711 |
|
|
ErrMsg : String; |
712 |
maya |
3227 |
begin |
713 |
maya |
4354 |
Result := True; |
714 |
|
|
|
715 |
maya |
3227 |
case CurPageID of |
716 |
|
|
|
717 |
|
|
wpWelcome: |
718 |
|
|
begin |
719 |
|
|
|
720 |
|
|
if RegQueryStringValue(HKEY_LOCAL_MACHINE, |
721 |
|
|
'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\UTF-8 TeraTerm Pro with TTSSH2_is1', |
722 |
|
|
'UninstallString', uninstaller) then |
723 |
|
|
begin |
724 |
|
|
// UTF-8 TeraTerm Pro with TTSSH2 ���A���C���X�g�[������������������ |
725 |
|
|
if not RegKeyExists(HKEY_LOCAL_MACHINE, |
726 |
|
|
'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Tera Term_is1') then |
727 |
|
|
begin |
728 |
|
|
// Tera Term ���C���X�g�[���G���g����������������(��������������) |
729 |
|
|
if MsgBox(CustomMessage('msg_uninstall_confirm'), mbInformation, MB_YESNO) = IDYES then |
730 |
|
|
begin |
731 |
|
|
// ���[�U���A���C���X�g�[�����I������ |
732 |
|
|
|
733 |
|
|
// ���[�� " ������ |
734 |
|
|
uninstaller2 := Copy(uninstaller, 2, Length(uninstaller) - 2); |
735 |
|
|
|
736 |
|
|
if not Exec(uninstaller2, '', '', SW_SHOW, |
737 |
|
|
ewWaitUntilTerminated, ResultCode) then |
738 |
|
|
begin |
739 |
|
|
// ���s�����s |
740 |
|
|
MsgBox(SysErrorMessage(ResultCode), mbError, MB_OK); |
741 |
|
|
end; |
742 |
|
|
end; |
743 |
|
|
end; |
744 |
|
|
end; |
745 |
|
|
|
746 |
|
|
end; |
747 |
|
|
|
748 |
maya |
4354 |
wpSelectDir: |
749 |
|
|
begin |
750 |
|
|
|
751 |
maya |
4356 |
ErrMsg := CheckAppsUsing(); |
752 |
|
|
if Length(ErrMsg) > 0 then |
753 |
maya |
4354 |
begin |
754 |
maya |
4356 |
MsgBox(Format(CustomMessage('msg_AppRunningError'), [ErrMsg]), mbError, MB_OK); |
755 |
maya |
4354 |
Result := False; |
756 |
maya |
4356 |
end |
757 |
|
|
else |
758 |
|
|
// -1: goto next. Turn over to Inno Setup. |
759 |
|
|
// 0: goto next. No problem. |
760 |
|
|
// NOP |
761 |
maya |
4354 |
end; |
762 |
|
|
|
763 |
maya |
3227 |
wpSelectComponents: |
764 |
|
|
begin |
765 |
|
|
|
766 |
doda |
4208 |
if FileExists(GetDefaultIniFileName()) then |
767 |
|
|
begin |
768 |
doda |
4209 |
iniFile := Lowercase(GetIniString('Tera Term', 'UILanguageFile', '', GetDefaultIniFilename())); |
769 |
|
|
if iniFile = 'lang\japanese.lng' then |
770 |
doda |
4208 |
UILangFilePage.SelectedValueIndex := 1 |
771 |
doda |
4209 |
else if iniFile = 'lang\german.lng' then |
772 |
doda |
4208 |
UILangFilePage.SelectedValueIndex := 2 |
773 |
doda |
4209 |
else if iniFile = 'lang\french.lng' then |
774 |
doda |
4208 |
UILangFilePage.SelectedValueIndex := 3 |
775 |
maya |
5136 |
else if iniFile = 'lang\russian.lng' then |
776 |
|
|
UILangFilePage.SelectedValueIndex := 4 |
777 |
maya |
5246 |
else if iniFile = 'lang\korean.lng' then |
778 |
|
|
UILangFilePage.SelectedValueIndex := 5 |
779 |
doda |
5421 |
else if iniFile = 'lang\simplified chinese.lng' then |
780 |
|
|
UILangFilePage.SelectedValueIndex := 6 |
781 |
maya |
5667 |
else if iniFile = 'lang\traditional chinese.lng' then |
782 |
|
|
UILangFilePage.SelectedValueIndex := 7 |
783 |
doda |
4208 |
else |
784 |
|
|
UILangFilePage.SelectedValueIndex := 0; |
785 |
|
|
end; |
786 |
maya |
3227 |
|
787 |
|
|
end; |
788 |
|
|
end; |
789 |
|
|
end; |
790 |
|
|
|
791 |
|
|
procedure CurStepChanged(CurStep: TSetupStep); |
792 |
|
|
var |
793 |
|
|
iniFile : String; |
794 |
maya |
5665 |
CygDir : String; |
795 |
|
|
CygPath : String; |
796 |
|
|
CygDll : String; |
797 |
|
|
Cygterm : String; |
798 |
|
|
Res : Integer; |
799 |
|
|
Machine : Integer; |
800 |
maya |
3227 |
begin |
801 |
|
|
case CurStep of |
802 |
maya |
5440 |
ssPostInstall: |
803 |
maya |
3227 |
begin |
804 |
|
|
iniFile := GetDefaultIniFilename(); |
805 |
|
|
SetIniFile(iniFile); |
806 |
|
|
|
807 |
maya |
5665 |
if IsComponentSelected('cygterm') then |
808 |
|
|
begin; |
809 |
|
|
Cygterm := ExpandConstant('{app}') + '\cygterm.exe'; |
810 |
|
|
if not FileExists(Cygterm) then |
811 |
|
|
begin; |
812 |
|
|
CygDir := GetIniString('Tera Term', 'CygwinDirectory', 'C:\cygwin', iniFile); |
813 |
|
|
SetLength(CygPath, 256); |
814 |
|
|
Res := FindCygwinPath(CygDir, CygPath, 256); |
815 |
|
|
If Res = 1 then |
816 |
|
|
begin; |
817 |
|
|
CygDll := Copy(CygPath, 1, Pos(#0, CygPath) - 1) + '\bin\cygwin1.dll'; |
818 |
maya |
5732 |
Machine := PortableExecutableMachine(CygDll); |
819 |
maya |
5665 |
if Machine = IMAGE_FILE_MACHINE_AMD64 then |
820 |
|
|
FileCopy(ExpandConstant('{app}') + '\cygterm+-x86_64\cygterm.exe', Cygterm, True) |
821 |
|
|
else |
822 |
|
|
FileCopy(ExpandConstant('{app}') + '\cygterm+-i686\cygterm.exe', Cygterm, True); |
823 |
|
|
end; |
824 |
maya |
5734 |
end else begin |
825 |
|
|
Machine := PortableExecutableMachine(Cygterm); |
826 |
|
|
if Machine = IMAGE_FILE_MACHINE_AMD64 then |
827 |
|
|
FileCopy(ExpandConstant('{app}') + '\cygterm+-x86_64\cygterm.exe', Cygterm, False) |
828 |
|
|
else |
829 |
|
|
FileCopy(ExpandConstant('{app}') + '\cygterm+-i686\cygterm.exe', Cygterm, False); |
830 |
maya |
5665 |
end; |
831 |
|
|
end; |
832 |
|
|
|
833 |
maya |
3227 |
if not IsTaskSelected('cygtermhere') then |
834 |
|
|
begin; |
835 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\Folder\shell\cygterm'); |
836 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, 'Folder\shell\cygterm'); |
837 |
maya |
4760 |
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\Directory\Background\shell\cygterm'); |
838 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\LibraryFolder\Background\shell\cygterm'); |
839 |
maya |
3227 |
end; |
840 |
|
|
|
841 |
|
|
if not IsTaskSelected('macroassoc') then |
842 |
|
|
begin; |
843 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\.ttl'); |
844 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\TeraTerm.MacroFile'); |
845 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '.ttl'); |
846 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, 'TeraTerm.MacroFile'); |
847 |
|
|
end; |
848 |
|
|
|
849 |
|
|
if not IsTaskSelected('telnetassoc') then |
850 |
|
|
begin; |
851 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\telnet\shell\Open with Tera Term'); |
852 |
|
|
RegDeleteValue(HKEY_CURRENT_USER, 'Software\Classes\telnet\shell', ''); |
853 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, 'telnet\shell\Open with Tera Term'); |
854 |
|
|
RegDeleteValue(HKEY_CLASSES_ROOT, 'telnet\shell', ''); |
855 |
|
|
end; |
856 |
maya |
3654 |
|
857 |
maya |
4760 |
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0); |
858 |
maya |
3654 |
|
859 |
maya |
5440 |
end; // ssPostInstall |
860 |
maya |
3227 |
end; // case CurStep of |
861 |
|
|
end; // CurStepChanged |
862 |
|
|
|
863 |
|
|
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); |
864 |
|
|
var |
865 |
zmatsuo |
9389 |
ini : array[0..6] of String; |
866 |
maya |
3227 |
buf : String; |
867 |
|
|
conf : String; |
868 |
|
|
confmsg : String; |
869 |
|
|
app : String; |
870 |
maya |
6486 |
i, res : Integer; |
871 |
|
|
silent : Boolean; |
872 |
maya |
3227 |
begin |
873 |
|
|
case CurUninstallStep of |
874 |
|
|
usPostUninstall: |
875 |
|
|
begin |
876 |
|
|
ini[0] := '\TERATERM.INI'; |
877 |
|
|
ini[1] := '\KEYBOARD.CNF'; |
878 |
maya |
5442 |
ini[2] := '\lang\Default.lng'; |
879 |
zmatsuo |
9389 |
ini[3] := '\lang_utf16le\Default.lng'; |
880 |
|
|
ini[4] := '\ssh_known_hosts'; |
881 |
|
|
ini[5] := '\cygterm.cfg'; |
882 |
|
|
ini[6] := '\broadcast.log'; |
883 |
maya |
3227 |
|
884 |
|
|
conf := CustomMessage('msg_del_confirm'); |
885 |
maya |
3783 |
app := ExpandConstant('{app}'); |
886 |
maya |
3227 |
|
887 |
maya |
6486 |
silent := false; |
888 |
|
|
for i := 0 to ParamCount() do |
889 |
maya |
3227 |
begin |
890 |
maya |
6486 |
if (CompareText('/SUPPRESSMSGBOXES', ParamStr(i)) = 0) then |
891 |
|
|
silent := true; |
892 |
|
|
end; |
893 |
|
|
|
894 |
|
|
if not silent then begin |
895 |
|
|
|
896 |
|
|
// delete config files |
897 |
zmatsuo |
9389 |
for i := 0 to 6 do |
898 |
maya |
6486 |
begin |
899 |
|
|
buf := app + ini[i]; |
900 |
|
|
if FileExists(buf) then begin |
901 |
|
|
confmsg := Format(conf, [buf]); |
902 |
|
|
res := MsgBox(confmsg, mbInformation, MB_YESNO or MB_DEFBUTTON2); |
903 |
|
|
if res = IDYES then |
904 |
|
|
DeleteFile(buf); |
905 |
|
|
end; |
906 |
|
|
end; |
907 |
|
|
|
908 |
|
|
// delete registory |
909 |
|
|
if RegKeyExists(HKEY_CURRENT_USER, 'Software\ShinpeiTools\TTermMenu') then begin |
910 |
|
|
confmsg := Format(conf, ['HKEY_CURRENT_USER' + '\Software\ShinpeiTools\TTermMenu']); |
911 |
maya |
3227 |
res := MsgBox(confmsg, mbInformation, MB_YESNO or MB_DEFBUTTON2); |
912 |
maya |
6486 |
if res = IDYES then begin |
913 |
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\ShinpeiTools\TTermMenu'); |
914 |
|
|
RegDeleteKeyIfEmpty(HKEY_CURRENT_USER, 'Software\ShinpeiTools'); |
915 |
|
|
end; |
916 |
maya |
3227 |
end; |
917 |
|
|
|
918 |
|
|
end; |
919 |
maya |
3654 |
|
920 |
maya |
3652 |
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0); |
921 |
maya |
3654 |
|
922 |
maya |
3227 |
// directory is deleted only if empty |
923 |
maya |
5449 |
RemoveDir(app + '\lang'); |
924 |
zmatsuo |
9389 |
RemoveDir(app + '\lang_utf16le'); |
925 |
maya |
3227 |
RemoveDir(app); |
926 |
|
|
end; |
927 |
|
|
end; |
928 |
|
|
end; |
929 |
|
|
|
930 |
|
|
[InstallDelete] |
931 |
|
|
Name: {app}\OpenSSH-LICENCE.txt; Type: files |
932 |
|
|
Name: {app}\cygterm-README.txt; Type: files |
933 |
|
|
Name: {app}\cygterm-README-j.txt; Type: files |
934 |
|
|
Name: {app}\keycode.txt; Type: files |
935 |
|
|
Name: {app}\keycodej.txt; Type: files |
936 |
|
|
Name: {app}\RE.txt; Type: files |
937 |
|
|
Name: {app}\RE-ja.txt; Type: files |
938 |
|
|
Name: {app}\ssh2_readme.txt; Type: files |
939 |
|
|
Name: {app}\ssh2_readme-j.txt; Type: files |
940 |
|
|
Name: {app}\utf8_readme.txt; Type: files |
941 |
|
|
Name: {app}\utf8_readme-j.txt; Type: files |
942 |
|
|
Name: {app}\OpenSSH-LICENSE.txt; Type: files |
943 |
|
|
Name: {app}\OpenSSL-LICENSE.txt; Type: files |
944 |
|
|
Name: {group}\TeraTerm Document.lnk; Type: files |
945 |
|
|
Name: {group}\TeraTerm Document(Japanese).lnk; Type: files |
946 |
|
|
Name: {group}\TTSSH Document.lnk; Type: files |
947 |
|
|
Name: {group}\TTSSH Document(Japanese).lnk; Type: files |
948 |
|
|
Name: {app}\LogMeTT.hlp; Type: files |
949 |
|
|
Name: {app}\macro.hlp; Type: files |
950 |
|
|
Name: {app}\macroj.hlp; Type: files |
951 |
|
|
Name: {app}\ttermp.hlp; Type: files |
952 |
|
|
Name: {app}\ttermpj.hlp; Type: files |
953 |
|
|
Name: {app}\copyfont.bat; Type: files |
954 |
|
|
Name: {app}\copyfont.pif; Type: files |
955 |
|
|
Name: {app}\libeay.txt; Type: files |
956 |
maya |
5665 |
Name: {app}\cygterm+-x86_64\cyglaunch.exe; Type: files |
957 |
maya |
7521 |
Name: {app}\ttpdlg.dll; Type: files |
958 |
maya |
5665 |
|
959 |
|
|
[UninstallDelete] |
960 |
|
|
Name: {app}\cygterm.exe; Type: files |