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

Subversion リポジトリの参照

Contents of /trunk/installer/teraterm.iss

Parent Directory Parent Directory | Revision Log Revision Log


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

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