오픈 소스 소프트웨어 개발 및 다운로드

Browse Subversion Repository

Contents of /trunk/installer/teraterm.iss

Parent Directory Parent Directory | Revision Log Revision Log


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

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