オープンソース・ソフトウェアの開発とダウンロード

Subversion リポジトリの参照

Contents of /trunk/installer/teraterm.iss

Parent Directory Parent Directory | Revision Log Revision Log


Revision 10600 - (show annotations) (download)
Fri Feb 17 15:54:37 2023 UTC (15 months, 1 week ago) by zmatsuo
File size: 42452 byte(s)
year++ (2022を2023へ)

- kanjimenu は変更がなかったので更新しなかった
  - TTXKanjiMenu/ttxkanjimenu.rc
1
2 #define AppName "Tera Term"
3 #ifndef AppVer
4 #define AppVer "5.0-alpha1"
5 #endif
6 ;#define VerSubStr
7 ;#define OutputSubStr
8
9 [InnoIDE_PreCompile]
10 Name: makechm.bat
11 Name: build.bat
12 ;Name: build.bat; Parameters: rebuild
13
14 [InnoIDE_PostCompile]
15 ;Name: makearchive.bat; Parameters: release
16
17 [PreCompile]
18 Name: makechm.bat
19 Name: build.bat
20 ;Name: build.bat; Parameters: rebuild
21
22 [PostCompile]
23 ;Name: makearchive.bat; Parameters: release
24
25 [_ISToolPreCompile]
26 Name: makechm.bat
27 Name: build.bat
28 ;Name: build.bat; Parameters: rebuild
29
30 [_ISToolPostCompile]
31 ;Name: makearchive.bat; Parameters: release
32
33 [Setup]
34 AppCopyright=(C) 2004-2023 TeraTerm Project
35 AppPublisher=TeraTerm Project
36 AppPublisherURL=https://ttssh2.osdn.jp/
37 AppSupportURL=https://ttssh2.osdn.jp/
38 AppId={{07A7E17A-F6D6-44A7-82E6-6BEE528CCA2A}
39 AppName={#AppName}
40 #ifndef VerSubStr
41 AppVersion={#AppVer}
42 #else
43 AppVersion={#AppVer} {#VerSubStr}
44 #endif
45 LicenseFile=release\license.txt
46 DefaultDirName={commonpf}\teraterm5
47 DefaultGroupName={#AppName} 5
48 ShowLanguageDialog=yes
49 AllowNoIcons=true
50 UninstallDisplayIcon={app}\ttermpro.exe
51 #ifndef OutputSubStr
52 OutputBaseFilename=teraterm-{#AppVer}
53 #else
54 OutputBaseFilename=teraterm-{#AppVer}-{#OutputSubStr}
55 #endif
56 PrivilegesRequired=none
57 SolidCompression=yes
58 Compression=lzma2/ultra64
59
60 [Languages]
61 Name: en; MessagesFile: compiler:Default.isl
62 Name: ja; MessagesFile: compiler:Languages\Japanese.isl
63
64 [Dirs]
65 Name: {app}\theme; Components: TeraTerm
66 Name: {app}\theme\scale; Components: TeraTerm
67 Name: {app}\theme\tile; Components: TeraTerm
68 Name: {app}\plugin; Components: TeraTerm
69 Name: {app}\lang; Components: TeraTerm
70 Name: {app}\lang_utf16le; Components: TeraTerm
71
72 [Files]
73 Source: ..\teraterm\release\ttermpro.exe; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion
74 Source: ..\teraterm\release\ttpcmn.dll; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion
75 Source: ..\teraterm\release\ttptek.dll; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion
76 Source: release\TERATERM.INI; DestDir: {app}; Components: TeraTerm
77 Source: release\TSPECIAL1.TTF; DestDir: {commonfonts}; Components: TeraTerm; Attribs: readonly; Flags: onlyifdoesntexist overwritereadonly uninsneveruninstall; FontInstall: Tera Special; Check: isAbleToInstallFont
78 ;Source: release\TSPECIAL1.TTF; DestDir: {app}; Components: TeraTerm
79 Source: ..\doc\en\teraterm.chm; DestDir: {app}; Components: TeraTerm
80 Source: ..\doc\ja\teratermj.chm; DestDir: {app}; Components: TeraTerm
81 Source: release\license.txt; DestDir: {app}; Components: TeraTerm
82 Source: release\FUNCTION.CNF; DestDir: {app}; Components: TeraTerm
83 Source: release\IBMKEYB.CNF; DestDir: {app}; Components: TeraTerm
84 Source: release\EDITOR.CNF; DestDir: {app}; Components: TeraTerm; DestName: KEYBOARD.CNF
85 Source: release\EDITOR.CNF; DestDir: {app}; Components: TeraTerm
86 Source: release\NT98KEYB.CNF; DestDir: {app}; Components: TeraTerm
87 Source: release\PC98KEYB.CNF; DestDir: {app}; Components: TeraTerm
88 Source: ..\teraterm\release\keycode.exe; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion
89 Source: ..\teraterm\release\ttpmacro.exe; DestDir: {app}; Components: TeraTerm; Flags: ignoreversion
90 Source: release\delpassw.ttl; DestDir: {app}; Components: TeraTerm
91 Source: release\dialup.ttl; DestDir: {app}; Components: TeraTerm
92 Source: release\login.ttl; DestDir: {app}; Components: TeraTerm
93 Source: release\mpause.ttl; DestDir: {app}; Components: TeraTerm
94 Source: release\random.ttl; DestDir: {app}; Components: TeraTerm
95 Source: release\screencapture.ttl; DestDir: {app}; Components: TeraTerm
96 Source: release\ssh2login.ttl; DestDir: {app}; Components: TeraTerm
97 Source: release\wait_regex.ttl; DestDir: {app}; Components: TeraTerm
98 Source: release\lang\Default.lng; DestDir: {app}\lang; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify
99 Source: release\lang\Japanese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
100 Source: release\lang\German.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
101 Source: release\lang\French.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
102 Source: release\lang\Russian.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
103 Source: release\lang\Korean.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
104 Source: release\lang\Simplified Chinese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
105 Source: release\lang\Spanish.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
106 Source: release\lang\Traditional Chinese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
107 Source: release\lang_utf16le\Default.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify
108 Source: release\lang_utf16le\Japanese.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
109 Source: release\lang_utf16le\German.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
110 Source: release\lang_utf16le\French.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
111 Source: release\lang_utf16le\Russian.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
112 Source: release\lang_utf16le\Korean.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
113 Source: release\lang_utf16le\Simplified Chinese.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
114 Source: release\lang_utf16le\Spanish.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
115 Source: release\lang_utf16le\Traditional Chinese.lng; DestDir: {app}\lang_utf16le; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly
116 Source: ..\ttssh2\ttxssh\Release\ttxssh.dll; DestDir: {app}; Components: TTSSH; Flags: ignoreversion
117 Source: release\ssh_known_hosts; DestDir: {app}; Components: TTSSH
118 Source: ..\cygwin\cygterm\cygterm.cfg; DestDir: {app}; Components: cygterm
119 Source: ..\cygwin\cygterm\cygterm+.tar.gz; DestDir: {app}; Components: cygterm
120 Source: ..\cygwin\cygterm\cygterm+-x86_64\cygterm.exe; DestDir: {app}; Components: cygterm
121 Source: ..\cygwin\Release\cyglaunch.exe; DestDir: {app}; Components: cygterm
122 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 Source: release\theme\ImageFile.INI; DestDir: {app}\theme\; Components: TeraTerm
127 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: ..\TTXKanjiMenu\release\ttxkanjimenu.dll; DestDir: {app}\; Components: Additional_Plugins/TTXKanjiMenu; Flags: ignoreversion
134 Source: ..\TTXSamples\release\TTXResizeMenu.dll; DestDir: {app}\; Components: Additional_Plugins/TTXResizeMenu; Flags: ignoreversion
135 Source: ..\TTXSamples\release\TTXttyrec.dll; DestDir: {app}\; Components: Additional_Plugins/TTXttyrec; Flags: ignoreversion
136 Source: ..\TTXSamples\release\TTXttyplay.dll; DestDir: {app}\; Components: Additional_Plugins/TTXttyrec; Flags: ignoreversion
137 Source: ..\TTXSamples\release\TTXKcodeChange.dll; DestDir: {app}\; Components: Additional_Plugins/TTXKcodeChange; Flags: ignoreversion
138 Source: ..\TTXSamples\release\TTXViewMode.dll; DestDir: {app}\; Components: Additional_Plugins/TTXViewMode; Flags: ignoreversion
139 Source: ..\TTXSamples\release\TTXAlwaysOnTop.dll; DestDir: {app}\; Components: Additional_Plugins/TTXAlwaysOnTop; Flags: ignoreversion
140 Source: ..\TTXSamples\release\TTXRecurringCommand.dll; DestDir: {app}\; Components: Additional_Plugins/TTXRecurringCommand; Flags: ignoreversion
141
142 [Types]
143 Name: standard; Description: {cm:type_standard}
144 Name: full; Description: {cm:type_full}
145 Name: compact; Description: {cm:type_compact}
146 Name: custom; Description: {cm:type_custom}; Flags: iscustom
147
148 [Components]
149 Name: TeraTerm; Description: Tera Term & Macro; Flags: fixed; Types: custom compact full standard
150 Name: TTSSH; Description: TTSSH; Types: compact full standard
151 Name: cygterm; Description: CygTerm+; Types: full standard; Check: isExecutableCygtermX64
152 Name: TeraTerm_Menu; Description: TeraTerm Menu; Types: full
153 Name: TTProxy; Description: TTProxy; Types: full standard
154 Name: Additional_Plugins; Description: {cm:comp_TTX}
155 Name: Additional_Plugins/TTXResizeMenu; Description: TTXResizeMenu ({cm:comp_TTXResizeMenu}); Types: full standard
156 Name: Additional_Plugins/TTXttyrec; Description: TTXttyrec ({cm:comp_TTXttyrec}); Types: full standard
157 Name: Additional_Plugins/TTXKanjiMenu; Description: TTXKanjiMenu ({cm:comp_TTXKanjiMenu}); Languages: en
158 Name: Additional_Plugins/TTXKanjiMenu; Description: TTXKanjiMenu ({cm:comp_TTXKanjiMenu}); Types: full; Languages: ja
159 Name: Additional_Plugins/TTXKcodeChange; Description: TTXKcodeChange ({cm:comp_TTXKcodeChange}); Languages: en
160 Name: Additional_Plugins/TTXKcodeChange; Description: TTXKcodeChange ({cm:comp_TTXKcodeChange}); Types: full; Languages: ja
161 Name: Additional_Plugins/TTXViewMode; Description: TTXViewMode ({cm:comp_TTXViewMode}); Types: full
162 Name: Additional_Plugins/TTXAlwaysOnTop; Description: TTXAlwaysOnTop ({cm:comp_TTXAlwaysOnTop}); Types: full
163 Name: Additional_Plugins/TTXRecurringCommand; Description: TTXRecurringCommand ({cm:comp_TTXRecurringCommand}); Types: full
164
165 [Icons]
166 Name: {group}\Tera Term; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; IconIndex: 0; Components: TeraTerm; Flags: createonlyiffileexists
167 Name: {group}\{cm:UninstallProgram,{#AppName}}; Filename: {uninstallexe}; Components: TeraTerm; Flags: createonlyiffileexists
168 Name: {group}\cyglaunch; Filename: {app}\cyglaunch.exe; WorkingDir: {app}; IconFilename: {app}\cyglaunch.exe; IconIndex: 0; Components: cygterm; Flags: createonlyiffileexists
169 Name: {group}\TeraTerm Menu; Filename: {app}\ttpmenu.exe; WorkingDir: {app}; IconFilename: {app}\ttpmenu.exe; IconIndex: 0; Components: TeraTerm_Menu; Flags: createonlyiffileexists
170 Name: {userdesktop}\Tera Term 5; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; Components: TeraTerm; Tasks: desktopicon; IconIndex: 0; Flags: createonlyiffileexists
171 Name: {userstartup}\TeraTerm Menu; Filename: {app}\ttpmenu.exe; WorkingDir: {app}; IconFilename: {app}\ttpmenu.exe; Components: TeraTerm_Menu; IconIndex: 0; Tasks: startupttmenuicon; Flags: createonlyiffileexists
172
173 [Registry]
174 ; Cygterm Here
175 Root: HKCU; Subkey: Software\Classes\Folder\shell\cygterm; ValueType: string; ValueData: Cy&gterm Here; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
176 Root: HKCU; Subkey: Software\Classes\Folder\shell\cygterm; ValueType: string; ValueName: Icon; ValueData: """{app}\cyglaunch.exe"""; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
177 Root: HKCU; Subkey: Software\Classes\Folder\shell\cygterm\command; ValueType: string; ValueData: """{app}\cyglaunch.exe"" -nocd -v CHERE_INVOKING=y -d ""\""%L\"""""; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
178 ; Cygterm Here from folder Background
179 Root: HKCU; Subkey: Software\Classes\Directory\Background\shell\cygterm; ValueType: string; ValueData: Cy&gterm Here; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
180 Root: HKCU; Subkey: Software\Classes\Directory\Background\shell\cygterm; ValueType: string; ValueName: Icon; ValueData: """{app}\cyglaunch.exe"""; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
181 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
182 Root: HKCU; Subkey: Software\Classes\LibraryFolder\Background\shell\cygterm; ValueType: string; ValueData: Cy&gterm Here; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
183 Root: HKCU; Subkey: Software\Classes\LibraryFolder\Background\shell\cygterm; ValueType: string; ValueName: Icon; ValueData: """{app}\cyglaunch.exe"""; Flags: uninsdeletekey; Components: cygterm; Tasks: cygtermhere
184 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
185 ; Associate with .TTL
186 Root: HKCU; Subkey: Software\Classes\.ttl; ValueType: string; ValueData: TeraTerm.MacroFile; Flags: uninsdeletekey; Components: TeraTerm; Tasks: macroassoc
187 Root: HKCU; Subkey: Software\Classes\TeraTerm.MacroFile; ValueType: string; ValueData: Tera Term Macro File; Flags: uninsdeletekey; Components: TeraTerm; Tasks: macroassoc
188 Root: HKCU; Subkey: Software\Classes\TeraTerm.MacroFile\DefaultIcon; ValueType: string; ValueData: {app}\ttpmacro.exe,3; Flags: uninsdeletekey; Components: TeraTerm; Tasks: macroassoc
189 Root: HKCU; Subkey: Software\Classes\TeraTerm.MacroFile\shell\open\command; ValueType: string; ValueData: """{app}\ttpmacro.exe"" ""%1"""; Flags: uninsdeletekey; Components: TeraTerm; Tasks: macroassoc
190 ; Associate with telnet://
191 Root: HKCU; Subkey: Software\Classes\telnet\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Components: TeraTerm; Tasks: telnetassoc
192 Root: HKCU; Subkey: Software\Classes\telnet\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" /T=1 /nossh %1"; Flags: uninsdeletekey; Components: TeraTerm; Tasks: telnetassoc
193 ; Associate with ssh://
194 Root: HKCU; Subkey: Software\Classes\ssh; ValueType: string; ValueData: URL: SSH Protocol; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
195 Root: HKCU; Subkey: Software\Classes\ssh; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
196 Root: HKCU; Subkey: Software\Classes\ssh; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
197 Root: HKCU; Subkey: Software\Classes\ssh\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
198 Root: HKCU; Subkey: Software\Classes\ssh\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
199 ; Associate with slogin://
200 Root: HKCU; Subkey: Software\Classes\slogin; ValueType: string; ValueData: URL: slogin Protocol; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
201 Root: HKCU; Subkey: Software\Classes\slogin; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
202 Root: HKCU; Subkey: Software\Classes\slogin; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
203 Root: HKCU; Subkey: Software\Classes\slogin\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
204 Root: HKCU; Subkey: Software\Classes\slogin\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Components: TTSSH; Tasks: sshassoc
205 ; Associate with .TTY
206 Root: HKCU; Subkey: Software\Classes\.tty; ValueType: string; ValueData: TTYRecordFile; Flags: uninsdeletekey; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc
207 Root: HKCU; Subkey: Software\Classes\TTYRecordFile; ValueType: string; ValueData: TTY Record File; Flags: uninsdeletekey; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc
208 Root: HKCU; Subkey: Software\Classes\TTYRecordFile\DefaultIcon; ValueType: string; ValueData: {app}\ttermpro.exe,0; Flags: uninsdeletekey; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc
209 Root: HKCU; Subkey: Software\Classes\TTYRecordFile\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" /R=""%1"" /TTYPLAY"; Flags: uninsdeletekey; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc
210
211 [Tasks]
212 Name: desktopicon; Description: {cm:task_desktopicon}; Components: TeraTerm
213 ; Tera Term 4 のを上書きしないよう、テスト版の間は TeraTerm Menu のデフォルトを off にする
214 ; Name: startupttmenuicon; Description: {cm:task_startupttmenuicon}; Components: TeraTerm_Menu
215 Name: startupttmenuicon; Description: {cm:task_startupttmenuicon}; Components: TeraTerm_Menu; Flags: unchecked
216 Name: cygtermhere; Description: {cm:task_cygtermhere}; Components: cygterm; Flags: unchecked
217 Name: macroassoc; Description: {cm:task_macroassoc}; Components: TeraTerm; Flags: unchecked
218 Name: telnetassoc; Description: {cm:task_telnetassoc}; Components: TeraTerm; Flags: unchecked
219 Name: sshassoc; Description: {cm:task_sshassoc}; Components: TTSSH; Flags: unchecked
220 Name: ttyplayassoc; Description: {cm:task_ttyplayassoc}; Components: Additional_Plugins/TTXttyrec; Flags: unchecked
221
222 [Run]
223 Filename: {app}\ttermpro.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_teraterm}; Components: TeraTerm
224 Filename: {app}\ttpmenu.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_ttmenu}; Components: TeraTerm_Menu
225
226 [CustomMessages]
227 en.task_desktopicon=Create Tera Term shortcut to &Desktop
228 en.task_startupttmenuicon=Create TeraTerm &Menu shortcut to Startup
229 en.task_cygtermhere=Add "Cy&gterm Here" to Context menu
230 en.task_macroassoc=Associate .&ttl file to ttpmacro.exe
231 en.task_telnetassoc=Associate t&elnet protocol to ttermpro.exe
232 en.task_sshassoc=Associate &ssh protocol to ttermpro.exe
233 en.task_ttyplayassoc=Associate .tty file to tterm&pro.exe
234 ja.task_desktopicon=デスクトップに Tera Term のショートカットを作る(&D)
235 ja.task_startupttmenuicon=スタートアップに TeraTerm &Menu のショートカットを作る
236 ja.task_cygtermhere=コンテキストメニューに "Cy&gterm Here" を追加する
237 ja.task_macroassoc=.&ttl ファイルを ttpmacro.exe に関連付ける
238 ja.task_telnetassoc=t&elnet プロトコルを ttermpro.exe に関連付ける
239 ja.task_sshassoc=&ssh プロトコルを ttermpro.exe に関連付ける
240 ja.task_ttyplayassoc=.tty ファイルを tterm&pro.exe に関連付ける
241 en.type_standard=Standard installation
242 en.type_full=Full installation
243 en.type_compact=Compact installation
244 en.type_custom=Custom installation
245 ja.type_standard=標準インストール
246 ja.type_full=フルインストール
247 ja.type_compact=コンパクトインストール
248 ja.type_custom=カスタムインストール
249 en.launch_teraterm=Launch &Tera Term
250 en.launch_ttmenu=Launch TeraTerm &Menu
251 ja.launch_teraterm=今すぐ &Tera Term を実行する
252 ja.launch_ttmenu=今すぐ TeraTerm &Menu を実行する
253 en.msg_language_caption=Select Language
254 en.msg_language_description=Which language shoud be used?
255 en.msg_language_subcaption=Select the language of application's menu and dialog, then click Next.
256 en.msg_language_none=&English
257 en.msg_language_japanese=&Japanese
258 en.msg_language_german=&German
259 en.msg_language_french=&French
260 en.msg_language_russian=&Russian
261 en.msg_language_korean=&Korean
262 en.msg_language_chinese=&Chinese(Simplified)
263 en.msg_language_tchinese=Chinese(&Traditional)
264 ja.msg_language_caption=言語の選択
265 ja.msg_language_description=ユーザーインターフェースの言語を選択してください。
266 ja.msg_language_subcaption=アプリケーションのメニューやダイアログ等の表示言語を選択して、「次へ」をクリックしてください。
267 ja.msg_language_none=英語(&E)
268 ja.msg_language_japanese=日本語(&J)
269 ja.msg_language_german=ドイツ語(&G)
270 ja.msg_language_french=フランス語(&F)
271 ja.msg_language_russian=ロシア語(&R)
272 ja.msg_language_korean=韓国語(&K)
273 ja.msg_language_chinese=簡体字中国語(&C)
274 ja.msg_language_tchinese=繁体字中国語(&T)
275 en.msg_del_confirm=Are you sure that you want to delete %s ?
276 ja.msg_del_confirm=%s を削除しますか?
277 en.msg_uninstall_confirm=It seems a former version is installed. You are recommended to uninstall it previously. Do you uninstall former version ?
278 ja.msg_uninstall_confirm=以前のバージョンがインストールされているようです。先にアンインストールすることをお勧めします。アンインストールしますか?
279 en.comp_TTX=Additional Plugins
280 ja.comp_TTX=追加プラグイン
281 en.comp_TTXResizeMenu=VT-Window size can be changed from preset
282 ja.comp_TTXResizeMenu=VTウィンドウのサイズをプリセット値の中から変更できるようにする
283 en.comp_TTXttyrec=ttyrec format record data can be recorded or playback
284 ja.comp_TTXttyrec=ttyrec形式の録画データを記録/再生できるようにする
285 en.comp_TTXKanjiMenu=Changes Japanese Kanji Code from VT-Window menu
286 ja.comp_TTXKanjiMenu=日本語の漢字コードをVTウィンドウのメニューから設定できるようにする
287 en.comp_TTXKcodeChange=Change Japanese Kanji code by remote sequence
288 ja.comp_TTXKcodeChange=リモートからのシーケンスで日本語の漢字コードを変更する
289 en.comp_TTXViewMode=View-only mode can be used
290 ja.comp_TTXViewMode=表示専用モードにすることができる
291 en.comp_TTXAlwaysOnTop=Always On Top can be used
292 ja.comp_TTXAlwaysOnTop=常に最前面に表示できるようにする
293 en.comp_TTXRecurringCommand=Recurring Command can be used
294 ja.comp_TTXRecurringCommand=定期的に文字列を送信する
295 en.comp_installer=Other installer is started
296 ja.comp_installer=インストーラが起動します
297 en.msg_AppRunningError=Setup has detected that %s is currently running.%n%nPlease close all instances of it now, then click Next to continue.
298 ja.msg_AppRunningError=セットアップは実行中の %s を検出しました。%n%n開いているアプリケーションをすべて閉じてから「次へ」をクリックしてください。
299
300 [Code]
301 const
302 SHCNF_IDLIST = $0000;
303 SHCNE_ASSOCCHANGED = $08000000;
304 IMAGE_FILE_MACHINE_UNKNOWN = $0000;
305 IMAGE_FILE_MACHINE_I386 = $014c;
306 IMAGE_FILE_MACHINE_AMD64 = $8664;
307
308 procedure SHChangeNotify(wEventId, uFlags, dwItem1, dwItem2: Integer);
309 external 'SHChangeNotify@shell32.dll stdcall';
310
311 var
312 UILangFilePage: TInputOptionWizardPage;
313
314
315 // Windows 11 or later
316 function isWin11OrLater : Boolean;
317 var
318 Version: TWindowsVersion;
319 begin;
320 GetWindowsVersionEx(Version);
321 if (Version.Major >= 10) and (Version.Build >= 22000) then
322 Result := True
323 else
324 Result := False;
325 end;
326
327 // Cygterm x86_64 is executable
328 function isExecutableCygtermX64 : Boolean;
329 begin
330 if ProcessorArchitecture = paX64 then
331 Result := True
332 else if ProcessorArchitecture = paARM64 then
333 // x86_64 binary is executable on ARM64 by WoW64
334 if isWin11OrLater then
335 Result := True
336 else
337 Result := False
338 else
339 Result := False;
340 end;
341
342 // Admins or PowerUsers
343 function isAbleToInstallFont : Boolean;
344 begin;
345 if IsAdmin() then begin
346 Result := True;
347 end else begin
348 Result := False
349 end;
350 end;
351
352 {
353 // If value is not found in INI, returns ""
354 function GetIniString2(Section:String; Key:String; Filename:String) : String;
355 var
356 Default1: String;
357 Default2: String;
358 Value1: String;
359 Value2: String;
360 begin
361 Default1 := 'on';
362 Default2 := 'off';
363 Value1 := GetIniString(Section, Key, Default1, Filename);
364 Value2 := GetIniString(Section, Key, Default2, Filename);
365
366 if Value1 <> Value2 then
367 // no value in INI
368 Result := ''
369 else
370 // value in INI
371 Result := Value1
372 end;
373 }
374
375 function CheckFileUsing(Filename:String) : integer;
376 var
377 TmpFileName : String;
378 begin
379 if FileExists(FileName) then
380 begin
381 TmpFileName := FileName + '.' + GetDateTimeString('yyyymmddhhnnss', #0, #0); // Tmp file ends with timestamp
382 if FileCopy(FileName, TmpFileName, True) then
383 if DeleteFile(FileName) then
384 if RenameFile(TmpFileName, FileName) then
385 Result := 0
386 else
387 Result := -1 // permission?
388 else
389 begin
390 Result := 1; // failed to delete
391 DeleteFile(TmpFileName);
392 end
393 else
394 Result := -1 // permission?
395 end
396 else
397 Result := 0;
398 end;
399
400 function CheckAppsUsing() : string;
401 var
402 FileDir : String;
403 FileName : array[0..6] of String;
404 FileDesc : array[0..6] of String;
405 i : integer;
406 begin
407 FileDir := ExpandConstant('{app}');
408 FileName[0] := FileDir + '\ttermpro.exe';
409 FileName[1] := FileDir + '\ttpmacro.exe';
410 FileName[2] := FileDir + '\keycode.exe';
411 FileName[3] := FileDir + '\ttpmenu.exe';
412 FileName[4] := FileDir + '\cygterm.exe';
413 FileDesc[0] := 'Tera Term';
414 FileDesc[1] := 'Tera Term Macro';
415 FileDesc[2] := 'Keycode';
416 FileDesc[3] := 'TeraTerm Menu';
417 FileDesc[4] := 'CygTerm+';
418
419 for i := 0 to 4 do
420 begin
421 case CheckFileUsing(FileName[i]) of
422 1:
423 // Failed to delete. In use.
424 begin
425 if Length(Result) > 0 then
426 Result := Result + ', ' + FileDesc[i]
427 else
428 Result := FileDesc[i]
429 end;
430 else
431 // -1: Failed to copy/rename
432 // 0: OK
433 // NOP
434 end;
435 end;
436
437 end;
438
439 function GetDefaultIniFilename : String;
440 begin
441 Result := ExpandConstant('{app}') + '\TERATERM.INI';
442 end;
443
444 procedure SetIniFile(iniFile: String);
445 var
446 Language : String;
447 VTFont : String;
448 TEKFont : String;
449 TCPPort : integer;
450 ViewlogEditor : String;
451 CipherOrder : String;
452
453 begin
454 Language := GetIniString('Tera Term', 'Language', '', iniFile);
455 VTFont := GetIniString('Tera Term', 'VTFont', '', iniFile);
456 TEKFont := GetIniString('Tera Term', 'TEKFont', '', iniFile);
457 TCPPort := GetIniInt('Tera Term', 'TCPPort', 0, 0, 65535, iniFile)
458 ViewlogEditor := GetIniString('Tera Term', 'ViewlogEditor', '', iniFile);
459 CipherOrder := GetIniString('TTSSH', 'CipherOrder', '', iniFile);
460
461 case GetUILanguage and $3FF of
462 $04: // Chinese
463 begin
464 if Length(Language) = 0 then
465 SetIniString('Tera Term', 'Language', 'UTF-8', iniFile);
466 if Length(VTFont) = 0 then
467 SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile);
468 if Length(TEKFont) = 0 then
469 SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile);
470 SetIniString('Tera Term', 'UnicodeAmbiguousWidth', '2', iniFile);
471 SetIniString('Tera Term', 'UnicodeEmojiOverride', 'on', iniFile);
472 SetIniString('Tera Term', 'UnicodeEmojiWidth', '2', iniFile);
473 end;
474 $11: // Japanese
475 begin
476 if Length(Language) = 0 then
477 SetIniString('Tera Term', 'Language', 'Japanese', iniFile);
478 if Length(VTFont) = 0 then
479 SetIniString('Tera Term', 'VTFont', 'MS ゴシック,0,-16,128', iniFile);
480 if Length(TEKFont) = 0 then
481 SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,128', iniFile);
482 SetIniString('Tera Term', 'UnicodeAmbiguousWidth', '2', iniFile);
483 SetIniString('Tera Term', 'UnicodeEmojiOverride', 'on', iniFile);
484 SetIniString('Tera Term', 'UnicodeEmojiWidth', '2', iniFile);
485 end;
486 $12: // Korean
487 begin
488 if Length(Language) = 0 then
489 SetIniString('Tera Term', 'Language', 'Korean', iniFile);
490 if Length(VTFont) = 0 then
491 SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile);
492 if Length(TEKFont) = 0 then
493 SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile);
494 SetIniString('Tera Term', 'UnicodeAmbiguousWidth', '2', iniFile);
495 SetIniString('Tera Term', 'UnicodeEmojiOverride', 'on', iniFile);
496 SetIniString('Tera Term', 'UnicodeEmojiWidth', '2', iniFile);
497 end;
498 $19: // Russian
499 begin
500 if Length(Language) = 0 then
501 SetIniString('Tera Term', 'Language', 'Russian', iniFile);
502 if Length(VTFont) = 0 then
503 SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile);
504 if Length(TEKFont) = 0 then
505 SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile);
506 SetIniString('Tera Term', 'UnicodeAmbiguousWidth', '1', iniFile);
507 SetIniString('Tera Term', 'UnicodeEmojiOverride', 'off', iniFile);
508 SetIniString('Tera Term', 'UnicodeEmojiWidth', '1', iniFile);
509 end;
510 else // Other
511 begin
512
513 if GetUILanguage = $409 then begin // en-US
514
515 if Length(Language) = 0 then
516 SetIniString('Tera Term', 'Language', 'UTF-8', iniFile);
517
518 end else begin // Other
519
520 if Length(Language) = 0 then
521 SetIniString('Tera Term', 'Language', 'English', iniFile);
522
523 end;
524
525 if Length(VTFont) = 0 then
526 SetIniString('Tera Term', 'VTFont', 'Terminal,0,-12,255', iniFile);
527 if Length(TEKFont) = 0 then
528 SetIniString('Tera Term', 'TEKFont', 'Terminal,0,-8,255', iniFile);
529 SetIniString('Tera Term', 'UnicodeAmbiguousWidth', '1', iniFile);
530 SetIniString('Tera Term', 'UnicodeEmojiOverride', 'off', iniFile);
531 SetIniString('Tera Term', 'UnicodeEmojiWidth', '1', iniFile);
532 end;
533 end;
534
535 case UILangFilePage.SelectedValueIndex of
536 1:
537 SetIniString('Tera Term', 'UILanguageFile', 'lang\Japanese.lng', iniFile);
538 2:
539 SetIniString('Tera Term', 'UILanguageFile', 'lang\German.lng', iniFile);
540 3:
541 SetIniString('Tera Term', 'UILanguageFile', 'lang\French.lng', iniFile);
542 4:
543 SetIniString('Tera Term', 'UILanguageFile', 'lang\Russian.lng', iniFile);
544 5:
545 SetIniString('Tera Term', 'UILanguageFile', 'lang\Korean.lng', iniFile);
546 6:
547 SetIniString('Tera Term', 'UILanguageFile', 'lang\Simplified Chinese.lng', iniFile);
548 7:
549 SetIniString('Tera Term', 'UILanguageFile', 'lang\Traditional Chinese.lng', iniFile);
550 else
551 SetIniString('Tera Term', 'UILanguageFile', 'lang\Default.lng', iniFile);
552 end;
553
554 if TCPPort = 0 then begin
555 if WizardIsComponentSelected('TTSSH') then
556 SetIniInt('Tera Term', 'TCPPort', 22, iniFile)
557 else
558 SetIniInt('Tera Term', 'TCPPort', 23, iniFile);
559 end;
560
561 if ViewlogEditor = 'notepad.exe' then begin
562 ViewlogEditor := ExpandConstant('{win}') + '\' + 'notepad.exe';
563 SetIniString('Tera Term', 'ViewlogEditor', ViewlogEditor, iniFile);
564 end;
565
566 if WizardIsComponentSelected('TTSSH') then
567 begin
568 // これまでの TERATERM.INI のデフォルト値と同じ値なら、最新のデフォルト値で上書きする
569 // 新しく追加した方式が disable line より後ろに行ってしまう現象への対処
570 CipherOrder := GetIniString('TTSSH', 'CipherOrder', '', iniFile);
571 if (CompareStr(CipherOrder, 'MLK>H:J=G9I<F8C7D;EB30A@?62') = 0) or
572 (CompareStr(CipherOrder, 'K>H:J=G9I<F8C7D;EB30A@?62') = 0) or
573 (CompareStr(CipherOrder, 'K>H:J=G9I<F8C7D;A@?EB3062') = 0) or
574 (CompareStr(CipherOrder, '>:=9<8C7D;A@?EB3062') = 0) or
575 (CompareStr(CipherOrder, '>:=9<87;A@?B3026') = 0) or
576 (CompareStr(CipherOrder, '>:=9<87;A@?3026') = 0) or
577 (CompareStr(CipherOrder, '>:=9<87;?3026') = 0) or
578 (CompareStr(CipherOrder, '<8=9>:7;3026') = 0) or
579 (CompareStr(CipherOrder, '87;9:<=>3026') = 0) or
580 (CompareStr(CipherOrder, '87;9:3026') = 0) or
581 (CompareStr(CipherOrder, '873026') = 0) then
582 SetIniString('TTSSH', 'CipherOrder', 'MKN>H:J=G9LI<F8C7D;EB30A@?62', iniFile)
583 end;
584
585 end;
586
587 procedure InitializeWizard;
588 var
589 UILangFilePageCaption : String;
590 UILangFilePageDescription : String;
591 UILangFilePageSubCaption : String;
592 UILangFilePageNone : String;
593 UILangFilePageJapanese : String;
594 UILangFilePageGerman : String;
595 UILangFilePageFrench : String;
596 UILangFilePageRussian : String;
597 UILangFilePageKorean : String;
598 UILangFilePageChinese : String;
599 UILangFilePageTChinese : String;
600 begin
601 UILangFilePageCaption := CustomMessage('msg_language_caption');
602 UILangFilePageDescription := CustomMessage('msg_language_description');
603 UILangFilePageSubCaption := CustomMessage('msg_language_subcaption');
604 UILangFilePageNone := CustomMessage('msg_language_none');
605 UILangFilePageJapanese := CustomMessage('msg_language_japanese');
606 UILangFilePageGerman := CustomMessage('msg_language_german');
607 UILangFilePageFrench := CustomMessage('msg_language_french');
608 UILangFilePageRussian := CustomMessage('msg_language_russian');
609 UILangFilePageKorean := CustomMessage('msg_language_korean');
610 UILangFilePageChinese := CustomMessage('msg_language_chinese');
611 UILangFilePageTChinese := CustomMessage('msg_language_tchinese');
612
613 UILangFilePage := CreateInputOptionPage(wpSelectComponents,
614 UILangFilePageCaption, UILangFilePageDescription,
615 UILangFilePageSubCaption, True, False);
616 UILangFilePage.Add(UILangFilePageNone);
617 UILangFilePage.Add(UILangFilePageJapanese);
618 UILangFilePage.Add(UILangFilePageGerman);
619 UILangFilePage.Add(UILangFilePageFrench);
620 UILangFilePage.Add(UILangFilePageRussian);
621 UILangFilePage.Add(UILangFilePageKorean);
622 UILangFilePage.Add(UILangFilePageChinese);
623 UILangFilePage.Add(UILangFilePageTChinese);
624 case ActiveLanguage of
625 'ja':
626 UILangFilePage.SelectedValueIndex := 1;
627 // 他の言語は最新版に追従していないので、日本語だけ特別扱い
628 else
629 UILangFilePage.SelectedValueIndex := 0;
630 end;
631 end;
632
633 function NextButtonClick(CurPageID: Integer): Boolean;
634 var
635 iniFile : String;
636 ErrMsg : String;
637 begin
638 Result := True;
639
640 case CurPageID of
641
642 wpSelectDir:
643 begin
644
645 ErrMsg := CheckAppsUsing();
646 if Length(ErrMsg) > 0 then
647 begin
648 MsgBox(Format(CustomMessage('msg_AppRunningError'), [ErrMsg]), mbError, MB_OK);
649 Result := False;
650 end
651 else
652 // -1: goto next. Turn over to Inno Setup.
653 // 0: goto next. No problem.
654 // NOP
655 end;
656
657 wpSelectComponents:
658 begin
659
660 if FileExists(GetDefaultIniFileName()) then
661 begin
662 iniFile := Lowercase(GetIniString('Tera Term', 'UILanguageFile', '', GetDefaultIniFilename()));
663 if iniFile = 'lang\japanese.lng' then
664 UILangFilePage.SelectedValueIndex := 1
665 else if iniFile = 'lang\german.lng' then
666 UILangFilePage.SelectedValueIndex := 2
667 else if iniFile = 'lang\french.lng' then
668 UILangFilePage.SelectedValueIndex := 3
669 else if iniFile = 'lang\russian.lng' then
670 UILangFilePage.SelectedValueIndex := 4
671 else if iniFile = 'lang\korean.lng' then
672 UILangFilePage.SelectedValueIndex := 5
673 else if iniFile = 'lang\simplified chinese.lng' then
674 UILangFilePage.SelectedValueIndex := 6
675 else if iniFile = 'lang\traditional chinese.lng' then
676 UILangFilePage.SelectedValueIndex := 7
677 else
678 UILangFilePage.SelectedValueIndex := 0;
679 end;
680
681 end;
682 end;
683 end;
684
685 procedure CurStepChanged(CurStep: TSetupStep);
686 var
687 iniFile : String;
688 begin
689 case CurStep of
690 ssPostInstall:
691 begin
692 iniFile := GetDefaultIniFilename();
693 SetIniFile(iniFile);
694
695 if not WizardIsTaskSelected('cygtermhere') then
696 begin;
697 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\Folder\shell\cygterm');
698 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\Directory\Background\shell\cygterm');
699 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\LibraryFolder\Background\shell\cygterm');
700 end;
701
702 if not WizardIsTaskSelected('macroassoc') then
703 begin;
704 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\.ttl');
705 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\TeraTerm.MacroFile');
706 end;
707
708 if not WizardIsTaskSelected('telnetassoc') then
709 begin;
710 // デフォルトで telnet プロトコルに関連付けがある Windows バージョンがあるため、Tera Term への関連付けだけを削除する
711 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\telnet\shell\Open with Tera Term');
712 RegDeleteValue(HKEY_CURRENT_USER, 'Software\Classes\telnet\shell', '');
713 end;
714
715 if not WizardIsTaskSelected('sshassoc') then
716 begin;
717 // デフォルトの関連付けがないので、プロトコルごと削除
718 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\ssh');
719 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\slogin');
720 end;
721
722 if not WizardIsTaskSelected('ttyplayassoc') then
723 begin;
724 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\.tty');
725 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\TTYRecordFile');
726 end;
727
728 SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0);
729
730 end; // ssPostInstall
731 end; // case CurStep of
732 end; // CurStepChanged
733
734 procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
735 var
736 ini : array[0..1] of String;
737 buf : String;
738 conf : String;
739 confmsg : String;
740 app : String;
741 i, res : Integer;
742 silent : Boolean;
743 begin
744 case CurUninstallStep of
745 usPostUninstall:
746 begin
747 ini[0] := '\lang\Default.lng';
748 ini[1] := '\lang_utf16le\Default.lng';
749
750 conf := CustomMessage('msg_del_confirm');
751 app := ExpandConstant('{app}');
752
753 silent := false;
754 for i := 0 to ParamCount() do
755 begin
756 if (CompareText('/SUPPRESSMSGBOXES', ParamStr(i)) = 0) then
757 silent := true;
758 end;
759
760 if not silent then begin
761
762 // delete config files
763 for i := 0 to 1 do
764 begin
765 buf := app + ini[i];
766 if FileExists(buf) then begin
767 confmsg := Format(conf, [buf]);
768 res := MsgBox(confmsg, mbInformation, MB_YESNO or MB_DEFBUTTON2);
769 if res = IDYES then
770 DeleteFile(buf);
771 end;
772 end;
773
774 // delete registory
775 if RegKeyExists(HKEY_CURRENT_USER, 'Software\ShinpeiTools\TTermMenu') then begin
776 confmsg := Format(conf, ['HKEY_CURRENT_USER' + '\Software\ShinpeiTools\TTermMenu']);
777 res := MsgBox(confmsg, mbInformation, MB_YESNO or MB_DEFBUTTON2);
778 if res = IDYES then begin
779 RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\ShinpeiTools\TTermMenu');
780 RegDeleteKeyIfEmpty(HKEY_CURRENT_USER, 'Software\ShinpeiTools');
781 end;
782 end;
783
784 end;
785
786 SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0);
787
788 // directory is deleted only if empty
789 RemoveDir(app + '\lang');
790 RemoveDir(app + '\lang_utf16le');
791 RemoveDir(app);
792 end;
793 end;
794 end;
795
796 [InstallDelete]
797 ; インストーラに含めたことがあり、のちに含めなくなったファイルを指定する。
798 ; 新しいインストーラで上書きインストールしたあとのアンインストーラでは削除されないため。
799 Name: {app}\OpenSSH-LICENCE.txt; Type: files
800 Name: {app}\cygterm-README.txt; Type: files
801 Name: {app}\cygterm-README-j.txt; Type: files
802 Name: {app}\keycode.txt; Type: files
803 Name: {app}\keycodej.txt; Type: files
804 Name: {app}\RE.txt; Type: files
805 Name: {app}\RE-ja.txt; Type: files
806 Name: {app}\ssh2_readme.txt; Type: files
807 Name: {app}\ssh2_readme-j.txt; Type: files
808 Name: {app}\utf8_readme.txt; Type: files
809 Name: {app}\utf8_readme-j.txt; Type: files
810 Name: {app}\OpenSSH-LICENSE.txt; Type: files
811 Name: {app}\OpenSSL-LICENSE.txt; Type: files
812 Name: {group}\TeraTerm Document.lnk; Type: files
813 Name: {group}\TeraTerm Document(Japanese).lnk; Type: files
814 Name: {group}\TTSSH Document.lnk; Type: files
815 Name: {group}\TTSSH Document(Japanese).lnk; Type: files
816 Name: {app}\LogMeTT.hlp; Type: files
817 Name: {app}\macro.hlp; Type: files
818 Name: {app}\macroj.hlp; Type: files
819 Name: {app}\ttermp.hlp; Type: files
820 Name: {app}\ttermpj.hlp; Type: files
821 Name: {app}\copyfont.bat; Type: files
822 Name: {app}\copyfont.pif; Type: files
823 Name: {app}\libeay.txt; Type: files
824 Name: {app}\cygterm+-x86_64\cyglaunch.exe; Type: files
825 Name: {app}\ttpdlg.dll; Type: files
826 Name: {app}\ttpset.dll; Type: files
827
828 [UninstallDelete]
829 ; cygterm.exe は cygterm+-x86_64\cygterm.exe か cygterm+-i686\cygterm.exe を
830 ; スクリプトでコピーしたもので、自動でアンインストールされないため。
831 Name: {app}\cygterm.exe; Type: files

Properties

Name Value
svn:executable *

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26