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

Subversion リポジトリの参照

Diff of /trunk/installer/teraterm.iss

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3577 by maya, Sun Jul 5 13:40:58 2009 UTC revision 4511 by maya, Tue Jun 21 15:39:22 2011 UTC
# Line 1  Line 1 
1  #define AppName "Tera Term"  #define AppName "Tera Term"
2  #define AppVer "4.63"  #define AppVer "4.70-RC1"
3  ;#define snapshot GetDateTimeString('yyyymmdd_hhnnss', '', '');  ;#define snapshot GetDateTimeString('yyyymmdd_hhnnss', '', '');
4    
5  [Setup]  [Setup]
# Line 16  DefaultGroupName={#AppName} Line 16  DefaultGroupName={#AppName}
16  ShowLanguageDialog=yes  ShowLanguageDialog=yes
17  AllowNoIcons=true  AllowNoIcons=true
18  UninstallDisplayIcon={app}\ttermpro.exe  UninstallDisplayIcon={app}\ttermpro.exe
 AppMutex=TeraTermProAppMutex, TeraTermProMacroAppMutex, TeraTermProKeycodeAppMutex, TeraTermMenuAppMutex, CygTermAppMutex  
19  #ifndef snapshot  #ifndef snapshot
20  OutputBaseFilename=teraterm-{#AppVer}  OutputBaseFilename=teraterm-{#AppVer}
21  #else  #else
# Line 44  Source: ..\teraterm\release\ttpfile.dll; Line 43  Source: ..\teraterm\release\ttpfile.dll;
43  Source: ..\teraterm\release\ttpset.dll; DestDir: {app}; Components: TeraTerm  Source: ..\teraterm\release\ttpset.dll; DestDir: {app}; Components: TeraTerm
44  Source: ..\teraterm\release\ttptek.dll; DestDir: {app}; Components: TeraTerm  Source: ..\teraterm\release\ttptek.dll; DestDir: {app}; Components: TeraTerm
45  Source: release\TERATERM.INI; DestDir: {app}; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify  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: isPowerUsersMore  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  Source: ..\doc\en\teraterm.chm; DestDir: {app}; Components: TeraTerm
48  Source: ..\doc\ja\teratermj.chm; DestDir: {app}; Components: TeraTerm  Source: ..\doc\ja\teratermj.chm; DestDir: {app}; Components: TeraTerm
49  Source: release\license.txt; DestDir: {app}; Components: TeraTerm  Source: release\license.txt; DestDir: {app}; Components: TeraTerm
# Line 64  Source: release\random.ttl; DestDir: {ap Line 63  Source: release\random.ttl; DestDir: {ap
63  Source: release\screencapture.ttl; DestDir: {app}; Components: TeraTerm  Source: release\screencapture.ttl; DestDir: {app}; Components: TeraTerm
64  Source: release\ssh2login.ttl; DestDir: {app}; Components: TeraTerm  Source: release\ssh2login.ttl; DestDir: {app}; Components: TeraTerm
65  Source: release\wait_regex.ttl; DestDir: {app}; Components: TeraTerm  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  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  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  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  Source: release\ssh_known_hosts; DestDir: {app}; Components: TTSSH; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify
72  Source: ..\cygterm\cygterm.exe; DestDir: {app}; Components: cygterm  Source: ..\cygterm\cygterm.exe; DestDir: {app}; Components: cygterm
73  Source: ..\cygterm\cygterm.cfg; DestDir: {app}; Components: cygterm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify  Source: ..\cygterm\cygterm.cfg; DestDir: {app}; Components: cygterm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify
74  Source: ..\cygterm\cyglaunch.exe; DestDir: {app}; Components: cygterm  Source: ..\cygterm\cyglaunch.exe; DestDir: {app}; Components: cygterm
75  Source: ..\cygterm\cygterm+.tar.gz; DestDir: {app}; Components: cygterm  Source: ..\cygterm\cygterm+.tar.gz; DestDir: {app}; Components: cygterm
76  Source: ..\libs\logmett\setup295.exe; DestDir: {tmp}; Components: LogMeTT; Flags: deleteafterinstall  Source: ..\libs\logmett\Setup_LogMeTT_2_9_9_1.exe; DestDir: {tmp}; Components: LogMeTT; Flags: deleteafterinstall
77    Source: ..\libs\logmett\Setup_TTLEditor_1_2_1.exe; DestDir: {tmp}; Components: TTLEdit; Flags: deleteafterinstall
78  Source: ..\ttpmenu\Release\ttpmenu.exe; DestDir: {app}; Components: TeraTerm_Menu; Flags: ignoreversion  Source: ..\ttpmenu\Release\ttpmenu.exe; DestDir: {app}; Components: TeraTerm_Menu; Flags: ignoreversion
79  Source: release\ttmenu_readme-j.txt; DestDir: {app}; Components: TeraTerm_Menu  Source: release\ttmenu_readme-j.txt; DestDir: {app}; Components: TeraTerm_Menu
80  Source: ..\TTProxy\Release\TTXProxy.dll; DestDir: {app}; Components: TTProxy; Flags: ignoreversion  Source: ..\TTProxy\Release\TTXProxy.dll; DestDir: {app}; Components: TTProxy; Flags: ignoreversion
# Line 111  Name: custom; Description: {cm:type_cust Line 113  Name: custom; Description: {cm:type_cust
113  Name: TeraTerm; Description: Tera Term & Macro; Flags: fixed; Types: custom compact full standard  Name: TeraTerm; Description: Tera Term & Macro; Flags: fixed; Types: custom compact full standard
114  Name: TTSSH; Description: TTSSH; Types: compact full standard  Name: TTSSH; Description: TTSSH; Types: compact full standard
115  Name: cygterm; Description: CygTerm+; Types: full standard; Check: not isIA64  Name: cygterm; Description: CygTerm+; Types: full standard; Check: not isIA64
116  Name: LogMeTT; Description: LogMeTT & TTLEdit; Types: full standard; MinVersion: 4.1.1998,4.0.1381sp6  Name: LogMeTT; Description: LogMeTT; Types: full standard; MinVersion: 4.1.1998,4.0.1381sp6
117    Name: TTLEdit; Description: TTLEdit; Types: full standard; MinVersion: 4.1.1998,4.0.1381sp6
118  Name: TeraTerm_Menu; Description: TeraTerm Menu; Types: full  Name: TeraTerm_Menu; Description: TeraTerm Menu; Types: full
119  Name: TTProxy; Description: TTProxy; Types: full standard  Name: TTProxy; Description: TTProxy; Types: full standard
120  Name: Collector; Description: Collector; Types: full  Name: Collector; Description: Collector; Types: full
# Line 130  Name: Additional_Plugins/TTXRecurringCom Line 133  Name: Additional_Plugins/TTXRecurringCom
133  Name: {group}\Tera Term; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; IconIndex: 0; Components: TeraTerm; Flags: createonlyiffileexists  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  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  Name: {group}\cyglaunch; Filename: {app}\cyglaunch.exe; WorkingDir: {app}; IconFilename: {app}\cyglaunch.exe; IconIndex: 0; Components: cygterm; Flags: createonlyiffileexists
 Name: {group}\LogMeTT; Filename: {app}\LogMeTT.exe; WorkingDir: {app}; IconFilename: {app}\logMeTT.exe; IconIndex: 0; Components: LogMeTT; Flags: createonlyiffileexists  
 Name: {group}\TTLEdit; Filename: {app}\TTLEdit.exe; WorkingDir: {app}; IconFilename: {app}\TTLEdit.exe; IconIndex: 0; Components: LogMeTT; Flags: createonlyiffileexists  
136  Name: {group}\TeraTerm Menu; Filename: {app}\ttpmenu.exe; WorkingDir: {app}; IconFilename: {app}\ttpmenu.exe; IconIndex: 0; Components: TeraTerm_Menu; Flags: createonlyiffileexists  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  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  Name: {userdesktop}\Tera Term; Filename: {app}\ttermpro.exe; WorkingDir: {app}; IconFilename: {app}\ttermpro.exe; Components: TeraTerm; Tasks: desktopicon; IconIndex: 0; Flags: createonlyiffileexists
# Line 140  Name: {userstartup}\TeraTerm Menu; Filen Line 141  Name: {userstartup}\TeraTerm Menu; Filen
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  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  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    
 [INI]  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableLineMode; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableLineMode; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: TitleReportSequence; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: TitleReportSequence; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: WindowReportSequence; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: WindowReportSequence; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: CursorCtrlSequence; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: CursorCtrlSequence; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: WindowCtrlSequence; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: WindowCtrlSequence; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: Meta8Bit; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: Meta8Bit; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: PasteDelayPerLine; String: 10; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: PasteDelayPerLine; String: 10; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableAcceleratorDuplicateSession; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableAcceleratorDuplicateSession; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ClearScreenOnCloseConnection; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ClearScreenOnCloseConnection; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableMenuSendBreak; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableMenuSendBreak; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: PasteDialogSize; String: 330,220; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: PasteDialogSize; String: 330,220; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: TTXKanjiMenu; Key: UseOneSetting; String: on; Flags: createkeyifdoesntexist; Components: Additional_Plugins/TTXKanjiMenu  
 Filename: {userdocs}\teraterm.ini; Section: TTXKanjiMenu; Key: UseOneSetting; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: Additional_Plugins/TTXKanjiMenu  
 Filename: {app}\teraterm.ini; Section: TTSSH; Key: ForwardAgent; String: 0; Flags: createkeyifdoesntexist; Components: TTSSH  
 Filename: {userdocs}\teraterm.ini; Section: TTSSH; Key: ForwardAgent; String: 0; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TTSSH  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableBoldAttrColor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableBoldAttrColor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableBlinkAttrColor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableBlinkAttrColor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableReverseAttrColor; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableReverseAttrColor; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableURLColor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableURLColor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableANSIColor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableANSIColor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: StrictKeyMapping; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: StrictKeyMapping; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: VTReverseColor; String: 255,255,255,0,0,0; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: VTReverseColor; String: 255,255,255,0,0,0; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableWheelToCursorByCtrl; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableWheelToCursorByCtrl; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableMouseTrackingByCtrl; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableMouseTrackingByCtrl; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: TTSSH; Key: EnableRsaShortKeyServer; String: 0; Flags: createkeyifdoesntexist; Components: TTSSH  
 Filename: {userdocs}\teraterm.ini; Section: TTSSH; Key: EnableRsaShortKeyServer; String: 0; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TTSSH  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: AcceptTitleChangeRequest; String: overwrite; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: AcceptTitleChangeRequest; String: overwrite; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ScrollWindowClearScreen; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ScrollWindowClearScreen; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: UnicodeToDecSpMapping; String: 3; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: UnicodeToDecSpMapping; String: 3; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: UnknownUnicodeCharacterAsWide; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: UnknownUnicodeCharacterAsWide; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: AutoScrollOnlyInBottomLine; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: AutoScrollOnlyInBottomLine; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: VTIcon; String: Default; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: VTIcon; String: Default; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: TEKIcon; String: Default; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: TEKIcon; String: Default; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: MouseWheelScrollLine; String: 3; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: MouseWheelScrollLine; String: 3; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisablePasteMouseMButton; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisablePasteMouseMButton; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: SaveVTWinPos; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: SaveVTWinPos; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: Xterm256Color; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: Xterm256Color; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: Aixterm16Color; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: Aixterm16Color; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: PcBoldColor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: PcBoldColor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ConfirmChangePaste; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ConfirmChangePaste; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: LogHideDialog; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: LogHideDialog; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: MaximizedBugTweak; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: MaximizedBugTweak; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: KillFocusCursor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: KillFocusCursor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: MouseEventTracking; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: MouseEventTracking; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: HostDialogOnStartup; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: HostDialogOnStartup; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: TranslateWheelToCursor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: TranslateWheelToCursor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ConfirmFileDragAndDrop; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ConfirmFileDragAndDrop; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ZmodemRcvCommand; String: rz; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ZmodemRcvCommand; String: rz; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: XmodemRcvCommand; String: ; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: XmodemRcvCommand; String: ; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: TelAutoDetect; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: TelAutoDetect; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: SelectOnlyByLButton; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: SelectOnlyByLButton; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ClearComBuffOnOpen; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ClearComBuffOnOpen; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableAppCursor; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableAppCursor; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableAppKeypad; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableAppKeypad; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: TTSSH; Key: CheckAuthListFirst; String: 0; Flags: createkeyifdoesntexist; Components: TTSSH  
 Filename: {userdocs}\teraterm.ini; Section: TTSSH; Key: CheckAuthListFirst; String: 0; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TTSSH  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: MaxBroadcatHistory; String: 99; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: MaxBroadcatHistory; String: 99; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: TelKeepAliveInterval; String: 300; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: TelKeepAliveInterval; String: 300; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: VTCompatTab; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: VTCompatTab; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: FileSendFilter; String: ; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: FileSendFilter; String: ; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: LogAutoStart; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: LogAutoStart; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: LogDefaultPath; String: ; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: LogDefaultPath; String: ; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: AcceptBroadcast; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: AcceptBroadcast; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisableAcceleratorSendBreak; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisableAcceleratorSendBreak; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ConfirmPasteMouseRButton; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ConfirmPasteMouseRButton; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: BroadcastCommandHistory; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: BroadcastCommandHistory; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ConnectingTimeout; String: 0; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ConnectingTimeout; String: 0; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: LogDefaultName; String: teraterm.log; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: LogDefaultName; String: teraterm.log; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: TTSSH; Key: RememberPassword; String: 1; Flags: createkeyifdoesntexist; Components: TTSSH  
 Filename: {userdocs}\teraterm.ini; Section: TTSSH; Key: RememberPassword; String: 1; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TTSSH  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: LogTimestamp; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: LogTimestamp; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: AlphaBlend; String: 255; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: AlphaBlend; String: 255; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: UseNormalBGColor; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: UseNormalBGColor; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: HistoryList; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: HistoryList; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: LogTypePlainText; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: LogTypePlainText; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: URLColor; String: 0,255,0,255,255,255; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: URLColor; String: 0,255,0,255,255,255; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: EnableClickableUrl; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: EnableClickableUrl; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: DisablePasteMouseRButton; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: DisablePasteMouseRButton; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: BG; Key: BGEnable; String: off; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: BG; Key: BGEnable; String: off; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: BG; Key: BGUseAlphaBlendAPI; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: BG; Key: BGUseAlphaBlendAPI; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: BG; Key: BGSPIPath; String: plugin; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: BG; Key: BGSPIPath; String: plugin; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: BG; Key: BGFastSizeMove; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: BG; Key: BGFastSizeMove; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: BG; Key: BGNoFrame; String: on; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: BG; Key: BGNoFrame; String: on; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: BG; Key: BGThemeFile; String: theme\*.ini; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: BG; Key: BGThemeFile; String: theme\*.ini; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: Tera Term; Key: ViewlogEditor; String: notepad.exe; Flags: createkeyifdoesntexist; Components: TeraTerm  
 Filename: {userdocs}\teraterm.ini; Section: Tera Term; Key: ViewlogEditor; String: notepad.exe; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TeraTerm  
 Filename: {app}\teraterm.ini; Section: TTSSH; Key: KeyboardInteractive; String: 0; Flags: createkeyifdoesntexist; Components: TTSSH  
 Filename: {userdocs}\teraterm.ini; Section: TTSSH; Key: KeyboardInteractive; String: 0; Flags: createkeyifdoesntexist; Check: isUserIniExists; Components: TTSSH  
   
144  [Registry]  [Registry]
145  ; Cygterm Here  ; Cygterm Here
146  Root: HKCU; Subkey: Software\Classes\Folder\shell\cygterm; ValueType: string; ValueData: Cy&gterm Here; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: cygterm; Tasks: cygtermhere  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: isMinimumOfWin2K; Components: cygterm; Tasks: cygtermhere  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 isMinimumOfWin2K; Components: cygterm; Tasks: cygtermhere  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 isMinimumOfWin2K; Components: cygterm; Tasks: cygtermhere  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  ; Associate with .TTL
151  Root: HKCU; Subkey: Software\Classes\.ttl; ValueType: string; ValueData: TeraTerm.MacroFile; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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: isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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: isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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: isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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 isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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 isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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 isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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 isMinimumOfWin2K; Components: TeraTerm; Tasks: macroassoc  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://  ; Associate with telnet://
160  Root: HKCU; Subkey: Software\Classes\telnet\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: isMinimumOfWin2K; Components: TeraTerm; Tasks: telnetassoc  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: isMinimumOfWin2K; Components: TeraTerm; Tasks: telnetassoc  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 isMinimumOfWin2K; Components: TeraTerm; Tasks: telnetassoc  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 isMinimumOfWin2K; Components: TeraTerm; Tasks: telnetassoc  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://  ; Associate with ssh://
165  Root: HKCU; Subkey: Software\Classes\ssh\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  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\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  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: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  Root: HKCU; Subkey: Software\Classes\ssh; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc
168  Root: HKCR; Subkey: ssh\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: not isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  Root: HKCU; Subkey: Software\Classes\ssh\DefaultIcon; ValueType: string; ValueData: """{app}\ttxssh.dll"",0"; Flags: uninsdeletekey; Check: isWin2kOrLater; Components: TTSSH; Tasks: sshassoc
169  Root: HKCR; Subkey: ssh\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: not isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  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; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  Root: HKCR; Subkey: ssh; ValueType: string; ValueData: URL: SSH Protocol; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc
171  Root: HKCU; Subkey: Software\Classes\slogin\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  Root: HKCR; Subkey: ssh; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc
172  Root: HKCU; Subkey: Software\Classes\slogin\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  Root: HKCR; Subkey: ssh; ValueName: EditFlags; ValueType: dword; ValueData: 2; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc
173  Root: HKCU; Subkey: Software\Classes\slogin; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  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: slogin\shell; ValueType: string; ValueData: Open with Tera Term; Flags: uninsclearvalue; Check: not isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  Root: HKCR; Subkey: ssh\shell\open\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: not isWin2kOrLater; Components: TTSSH; Tasks: sshassoc
175  Root: HKCR; Subkey: slogin\shell\Open with Tera Term\command; ValueType: string; ValueData: """{app}\ttermpro.exe"" %1"; Flags: uninsdeletekey; Check: not isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  ; Associate with slogin://
176  Root: HKCR; Subkey: slogin; ValueName: URL Protocol; ValueType: string; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: TTSSH; Tasks: sshassoc  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  ; Associate with .TTY
187  Root: HKCU; Subkey: Software\Classes\.tty; ValueType: string; ValueData: TTYRecordFile; Flags: uninsdeletekey; Check: isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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: isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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: isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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: isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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 isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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 isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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 isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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 isMinimumOfWin2K; Components: Additional_Plugins/TTXttyrec; Tasks: ttyplayassoc  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]  [Tasks]
197  Name: desktopicon; Description: {cm:task_desktopicon}; Components: TeraTerm  Name: desktopicon; Description: {cm:task_desktopicon}; Components: TeraTerm
# Line 361  Name: ttyplayassoc; Description: {cm:tas Line 207  Name: ttyplayassoc; Description: {cm:tas
207    
208  [Run]  [Run]
209  Filename: {app}\ttermpro.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_teraterm}; Components: TeraTerm  Filename: {app}\ttermpro.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_teraterm}; Components: TeraTerm
210  Filename: {tmp}\setup295.exe; Components: LogMeTT  Filename: {tmp}\Setup_LogMeTT_2_9_9_1.exe; Components: LogMeTT
211    Filename: {tmp}\Setup_TTLEditor_1_2_1.exe; Components: TTLEdit
212  Filename: {app}\ttpmenu.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_ttmenu}; Components: TeraTerm_Menu  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  Filename: {app}\Collector\Collector.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_collector}; Components: Collector
214    
 [UninstallRun]  
 Filename: {app}\uninstall.exe; Components: LogMeTT  
   
215  [CustomMessages]  [CustomMessages]
216  en.task_desktopicon=Create Tera Term shortcut to &Desktop  en.task_desktopicon=Create Tera Term shortcut to &Desktop
217  en.task_quicklaunchicon=Create Tera Term shortcut to &Quick Launch  en.task_quicklaunchicon=Create Tera Term shortcut to &Quick Launch
# Line 388  ja.task_quickcyglaunch=クイック起動に cy Line 232  ja.task_quickcyglaunch=クイック起動に cy
232  ja.task_macroassoc=.&ttl ファイルを ttpmacro.exe に関連付ける  ja.task_macroassoc=.&ttl ファイルを ttpmacro.exe に関連付ける
233  ja.task_telnetassoc=t&elnet プロトコルを ttermpro.exe に関連付ける  ja.task_telnetassoc=t&elnet プロトコルを ttermpro.exe に関連付ける
234  ja.task_sshassoc=&ssh プロトコルを ttermpro.exe に関連付ける  ja.task_sshassoc=&ssh プロトコルを ttermpro.exe に関連付ける
235  ja.task_ttyplayassoc=.tty ファイルを ttermpro.exe に関連付ける  ja.task_ttyplayassoc=.tty ファイルを tterm&pro.exe に関連付ける
236  en.type_standard=Standard installation  en.type_standard=Standard installation
237  en.type_full=Full installation  en.type_full=Full installation
238  en.type_compact=Compact installation  en.type_compact=Compact installation
# Line 409  en.msg_language_subcaption=Select the la Line 253  en.msg_language_subcaption=Select the la
253  en.msg_language_none=&English  en.msg_language_none=&English
254  en.msg_language_japanese=&Japanese  en.msg_language_japanese=&Japanese
255  en.msg_language_german=&German  en.msg_language_german=&German
256    en.msg_language_french=&French
257  ja.msg_language_caption=言語の選択  ja.msg_language_caption=言語の選択
258  ja.msg_language_description=ユーザーインターフェースの言語を選択してください。  ja.msg_language_description=ユーザーインターフェースの言語を選択してください。
259  ja.msg_language_subcaption=アプリケーションのメニューやダイアログ等の表示言語を選択して、「次へ」をクリックしてください。  ja.msg_language_subcaption=アプリケーションのメニューやダイアログ等の表示言語を選択して、「次へ」をクリックしてください。
260  ja.msg_language_none=英語(&E)  ja.msg_language_none=英語(&E)
261  ja.msg_language_japanese=日本語(&J)  ja.msg_language_japanese=日本語(&J)
262  ja.msg_language_german=ドイツ語(&G)  ja.msg_language_german=ドイツ語(&G)
263    ja.msg_language_french=フランス語(&F)
264  en.msg_del_confirm=Are you sure that you want to delete %s ?  en.msg_del_confirm=Are you sure that you want to delete %s ?
265  ja.msg_del_confirm=%s を削除しますか?  ja.msg_del_confirm=%s を削除しますか?
266  en.msg_uninstall_confirm=It seems a former version is installed. You are recommended to uninstall it previously. Do you uninstall former version ?  en.msg_uninstall_confirm=It seems a former version is installed. You are recommended to uninstall it previously. Do you uninstall former version ?
# Line 435  en.comp_TTXAlwaysOnTop=Always On Top can Line 281  en.comp_TTXAlwaysOnTop=Always On Top can
281  ja.comp_TTXAlwaysOnTop=常に最前面に表示できるようにする  ja.comp_TTXAlwaysOnTop=常に最前面に表示できるようにする
282  en.comp_TTXRecurringCommand=Recurring Command can be used  en.comp_TTXRecurringCommand=Recurring Command can be used
283  ja.comp_TTXRecurringCommand=定期的に文字列を送信する  ja.comp_TTXRecurringCommand=定期的に文字列を送信する
284    en.msg_AppRunningError=Setup has detected that %s is currently running.%n%nPlease close all instances of it now, then click Next to continue.
285    ja.msg_AppRunningError=セットアップは実行中の %s を検出しました。%n%n開いているアプリケーションをすべて閉じてから「次へ」をクリックしてください。
286    
287  [Code]  [Code]
288    const
289      SHCNF_IDLIST = $0000;
290      SHCNE_ASSOCCHANGED = $08000000;
291    
292    procedure SHChangeNotify(wEventId, uFlags, dwItem1, dwItem2: Integer);
293    external 'SHChangeNotify@shell32.dll stdcall';
294    
295  var  var
296    UILangFilePage: TInputOptionWizardPage;    UILangFilePage: TInputOptionWizardPage;
297    
298    
299    // It is different from x64
300  function isIA64 : Boolean;  function isIA64 : Boolean;
301  begin  begin
302    if ProcessorArchitecture = paIA64 then    if ProcessorArchitecture = paIA64 then
# Line 449  begin Line 305  begin
305      Result := False;      Result := False;
306  end;  end;
307    
308  function isMinimumOfWin2K : Boolean;  // Windows 2000 or later
309    function isWin2kOrLater : Boolean;
310  var  var
311    Version: TWindowsVersion;    Version: TWindowsVersion;
312  begin;  begin;
# Line 460  begin; Line 317  begin;
317      Result := False;      Result := False;
318  end;  end;
319    
320  function isPowerUsersMore : Boolean;  // Window 9x or NT 4.0 or (Admins or PowerUsers)
321    function isAbleToInstallFont : Boolean;
322  begin;  begin;
323    if not UsingWinNT() then begin    if not UsingWinNT() then begin
324      Result := True;      Result := True;
325    end else begin    end else begin
326      if isMinimumOfWin2K() then begin      if isWin2kOrLater() then begin
327        if IsAdminLoggedOn() or IsPowerUserLoggedOn() then begin        if IsAdminLoggedOn() or IsPowerUserLoggedOn() then begin
328          Result := True;          Result := True;
329        end else begin        end else begin
# Line 477  begin; Line 335  begin;
335    end;    end;
336  end;  end;
337    
338  function GetDefaultIniFilename : String;  {
339    // If value is not found in INI, returns ""
340    function GetIniString2(Section:String; Key:String; Filename:String) : String;
341    var
342      Default1: String;
343      Default2: String;
344      Value1:   String;
345      Value2:   String;
346  begin  begin
347    Result := ExpandConstant('{app}') + '\TERATERM.INI';    Default1 := 'on';
348      Default2 := 'off';
349      Value1 := GetIniString(Section, Key, Default1, Filename);
350      Value2 := GetIniString(Section, Key, Default2, Filename);
351    
352      if Value1 <> Value2 then
353        // no value in INI
354        Result := ''
355      else
356        // value in INI
357        Result := Value1
358  end;  end;
359    }
360    
361  function isGetDefaultIniExists : Boolean;  function CheckFileUsing(Filename:String) : integer;
362  var  var
363    iniFile: String;    TmpFileName : String;
364  begin  begin
365    iniFile  := GetDefaultIniFilename();    if FileExists(FileName) then
366    if FileExists(iniFile) then      begin
367      Result := True        TmpFileName := FileName + '.' + GetDateTimeString('yyyymmddhhnnss', #0, #0); // Tmp file ends with timestamp
368          if FileCopy(FileName, TmpFileName, True) then
369            if DeleteFile(FileName) then
370              if RenameFile(TmpFileName, FileName) then
371                Result := 0
372              else
373                Result := -1 // permission?
374            else
375              begin
376                Result := 1; // failed to delete
377                DeleteFile(TmpFileName);
378              end
379          else
380            Result := -1 // permission?
381        end
382    else    else
383      Result := False;      Result := 0;
384  end;  end;
385    
386  function GetUserIniFilename : String;  function CheckAppsUsing() : string;
387    var
388      FileDir  : String;
389      FileName : array[0..6] of String;
390      FileDesc : array[0..6] of String;
391      i        : integer;
392  begin  begin
393    Result := ExpandConstant('{userdocs}') + '\TERATERM.INI';    FileDir := ExpandConstant('{app}');
394      FileName[0] := FileDir + '\ttermpro.exe';
395      FileName[1] := FileDir + '\ttpmacro.exe';
396      FileName[2] := FileDir + '\keycode.exe';
397      FileName[3] := FileDir + '\ttpmenu.exe';
398      FileName[4] := FileDir + '\cygterm.exe';
399      FileName[5] := FileDir + '\Collector.exe';
400      FileName[6] := FileDir + '\Collector_org.exe';
401      FileDesc[0] := 'Tera Term';
402      FileDesc[1] := 'Tera Term Macro';
403      FileDesc[2] := 'Keycode';
404      FileDesc[3] := 'TeraTerm Menu';
405      FileDesc[4] := 'CygTerm+';
406      FileDesc[5] := 'Collector';
407      FileDesc[6] := 'Collector';
408      
409      for i := 0 to 6 do
410      begin
411        case CheckFileUsing(FileName[i]) of
412          1:
413            // Failed to delete. In use.
414            begin
415              if Length(Result) > 0 then
416                Result := Result + ', ' + FileDesc[i]
417              else
418                Result := FileDesc[i]
419            end;
420          else
421            // -1: Failed to copy/rename
422            //  0: OK
423            // NOP
424        end;
425      end;
426    
427  end;  end;
428    
429  function isUserIniExists : Boolean;  function GetDefaultIniFilename : String;
 var  
   iniFile: String;  
430  begin  begin
431    iniFile  := GetUserIniFilename();    Result := ExpandConstant('{app}') + '\TERATERM.INI';
   if FileExists(iniFile) then  
     Result := True  
   else  
     Result := False;  
432  end;  end;
433    
434  procedure SetIniFile(iniFile: String);  procedure SetIniFile(iniFile: String);
435  var  var
436    Language : String;    Language      : String;
437    Locale   : String;    Locale        : String;
438    CodePage : integer;    CodePage      : integer;
439    VTFont   : String;    VTFont        : String;
440    TEKFont  : String;    TEKFont       : String;
441    FileDir  : String;    FileDir       : String;
442    TCPPort  : integer;    TCPPort       : integer;
443      ViewlogEditor : String;
444    
445  begin  begin
446    Language := GetIniString('Tera Term', 'Language', '', iniFile);    Language       := GetIniString('Tera Term', 'Language', '', iniFile);
447    Locale   := GetIniString('Tera Term', 'Locale', '', iniFile);    Locale         := GetIniString('Tera Term', 'Locale', '', iniFile);
448    CodePage := GetIniInt('Tera Term', 'CodePage', 0, 0, 0, iniFile);    CodePage       := GetIniInt('Tera Term', 'CodePage', 0, 0, 0, iniFile);
449    VTFont   := GetIniString('Tera Term', 'VTFont', '', iniFile);    VTFont         := GetIniString('Tera Term', 'VTFont', '', iniFile);
450    TEKFont  := GetIniString('Tera Term', 'TEKFont', '', iniFile);    TEKFont        := GetIniString('Tera Term', 'TEKFont', '', iniFile);
451    FileDir  := GetIniString('Tera Term', 'FileDir', '', iniFile);    FileDir        := GetIniString('Tera Term', 'FileDir', '', iniFile);
452      TCPPort        := GetIniInt('Tera Term', 'TCPPort', 0, 0, 65535, iniFile)
453      ViewlogEditor  := GetIniString('Tera Term', 'ViewlogEditor', '', iniFile);
454    
455    case GetUILanguage and $3FF of    case GetUILanguage and $3FF of
456    $04: // Chinese    $04: // Chinese
457      begin      begin
458        if Length(Language) = 0 then        if Length(Language) = 0 then
459          SetIniString('Tera Term', 'Language', 'Japanese', iniFile);          SetIniString('Tera Term', 'Language', 'UTF-8', iniFile);
460        if Length(Locale) = 0 then        if Length(Locale) = 0 then
461          SetIniString('Tera Term', 'Locale', 'chs', iniFile);          SetIniString('Tera Term', 'Locale', 'chs', iniFile);
462        if CodePage = 0 then        if CodePage = 0 then
# Line 586  begin Line 511  begin
511        if GetUILanguage = $409 then begin // en-US        if GetUILanguage = $409 then begin // en-US
512    
513          if Length(Language) = 0 then          if Length(Language) = 0 then
514            SetIniString('Tera Term', 'Language', 'Japanese', iniFile);            SetIniString('Tera Term', 'Language', 'UTF-8', iniFile);
515          if Length(Locale) = 0 then          if Length(Locale) = 0 then
516            SetIniString('Tera Term', 'Locale', 'american', iniFile);            SetIniString('Tera Term', 'Locale', 'american', iniFile);
517          if CodePage = 0 then          if CodePage = 0 then
# Line 615  begin Line 540  begin
540        SetIniString('Tera Term', 'UILanguageFile', 'lang\Japanese.lng', iniFile);        SetIniString('Tera Term', 'UILanguageFile', 'lang\Japanese.lng', iniFile);
541      2:      2:
542        SetIniString('Tera Term', 'UILanguageFile', 'lang\German.lng', iniFile);        SetIniString('Tera Term', 'UILanguageFile', 'lang\German.lng', iniFile);
543        3:
544          SetIniString('Tera Term', 'UILanguageFile', 'lang\French.lng', iniFile);
545      else      else
546        SetIniString('Tera Term', 'UILanguageFile', 'lang\English.lng', iniFile);        SetIniString('Tera Term', 'UILanguageFile', 'lang\Default.lng', iniFile);
547    end;    end;
548    
549    if Length(FileDir) = 0 then begin    if Length(FileDir) = 0 then begin
# Line 631  begin Line 558  begin
558        SetIniInt('Tera Term', 'TCPPort', 23, iniFile);        SetIniInt('Tera Term', 'TCPPort', 23, iniFile);
559    end;    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  end;  end;
567    
568  procedure InitializeWizard;  procedure InitializeWizard;
# Line 641  var Line 573  var
573    UILangFilePageNone        : String;    UILangFilePageNone        : String;
574    UILangFilePageJapanese    : String;    UILangFilePageJapanese    : String;
575    UILangFilePageGerman      : String;    UILangFilePageGerman      : String;
576      UILangFilePageFrench      : String;
577  begin  begin
578    UILangFilePageCaption     := CustomMessage('msg_language_caption');    UILangFilePageCaption     := CustomMessage('msg_language_caption');
579    UILangFilePageDescription := CustomMessage('msg_language_description');    UILangFilePageDescription := CustomMessage('msg_language_description');
# Line 648  begin Line 581  begin
581    UILangFilePageNone        := CustomMessage('msg_language_none');    UILangFilePageNone        := CustomMessage('msg_language_none');
582    UILangFilePageJapanese    := CustomMessage('msg_language_japanese');    UILangFilePageJapanese    := CustomMessage('msg_language_japanese');
583    UILangFilePageGerman      := CustomMessage('msg_language_german');    UILangFilePageGerman      := CustomMessage('msg_language_german');
584      UILangFilePageFrench      := CustomMessage('msg_language_french');
585    
586    UILangFilePage := CreateInputOptionPage(wpSelectComponents,    UILangFilePage := CreateInputOptionPage(wpSelectComponents,
587      UILangFilePageCaption, UILangFilePageDescription,      UILangFilePageCaption, UILangFilePageDescription,
# Line 655  begin Line 589  begin
589    UILangFilePage.Add(UILangFilePageNone);    UILangFilePage.Add(UILangFilePageNone);
590    UILangFilePage.Add(UILangFilePageJapanese);    UILangFilePage.Add(UILangFilePageJapanese);
591    UILangFilePage.Add(UILangFilePageGerman);    UILangFilePage.Add(UILangFilePageGerman);
592      UILangFilePage.Add(UILangFilePageFrench);
593    case ActiveLanguage of    case ActiveLanguage of
594      'ja':      'ja':
595        UILangFilePage.SelectedValueIndex := 1;        UILangFilePage.SelectedValueIndex := 1;
596        // 他の言語は最新版に追従していないので、日本語だけ特別扱い
597      else      else
598        UILangFilePage.SelectedValueIndex := 0;        UILangFilePage.SelectedValueIndex := 0;
599    end;    end;
# Line 667  function NextButtonClick(CurPageID: Inte Line 603  function NextButtonClick(CurPageID: Inte
603  var  var
604    uninstaller  : String;    uninstaller  : String;
605    uninstaller2 : String;    uninstaller2 : String;
606    ResultCode: Integer;    ResultCode   : Integer;
607    iniFile : String;    iniFile      : String;
608      ErrMsg       : String;
609  begin  begin
610      Result := True;
611    
612    case CurPageID of    case CurPageID of
613    
614      wpWelcome:      wpWelcome:
# Line 703  begin Line 642  begin
642    
643        end;        end;
644    
645        wpSelectDir:
646          begin
647    
648            ErrMsg := CheckAppsUsing();
649            if Length(ErrMsg) > 0 then
650              begin
651                MsgBox(Format(CustomMessage('msg_AppRunningError'), [ErrMsg]), mbError, MB_OK);
652                Result := False;
653              end
654            else
655            // -1: goto next. Turn over to Inno Setup.
656            //  0: goto next. No problem.
657            // NOP
658          end;
659    
660      wpSelectComponents:      wpSelectComponents:
661        begin        begin
662    
663          if isUserIniExists() then          if FileExists(GetDefaultIniFileName()) then
664          begin          begin
665            iniFile := GetIniString('Tera Term', 'UILanguageFile', '', GetUserIniFilename());            iniFile := Lowercase(GetIniString('Tera Term', 'UILanguageFile', '', GetDefaultIniFilename()));
666            if iniFile = 'lang\Japanese.lng' then            if iniFile = 'lang\japanese.lng' then
667              UILangFilePage.SelectedValueIndex := 1              UILangFilePage.SelectedValueIndex := 1
668            else if iniFile = 'lang\German.lng' then            else if iniFile = 'lang\german.lng' then
             UILangFilePage.SelectedValueIndex := 2  
           else  
             UILangFilePage.SelectedValueIndex := 0;  
         end if isGetDefaultIniExists() then begin  
           iniFile := GetIniString('Tera Term', 'UILanguageFile', '', GetDefaultIniFilename());  
           if iniFile = 'lang\Japanese.lng' then  
             UILangFilePage.SelectedValueIndex := 1  
           else if iniFile = 'lang\German.lng' then  
669              UILangFilePage.SelectedValueIndex := 2              UILangFilePage.SelectedValueIndex := 2
670              else if iniFile = 'lang\french.lng' then
671                UILangFilePage.SelectedValueIndex := 3
672            else            else
673              UILangFilePage.SelectedValueIndex := 0;              UILangFilePage.SelectedValueIndex := 0;
674          end;          end;
675    
676        end;        end;
677    end;    end;
   Result := True;  
678  end;  end;
679    
680  procedure CurStepChanged(CurStep: TSetupStep);  procedure CurStepChanged(CurStep: TSetupStep);
# Line 740  begin Line 687  begin
687          iniFile := GetDefaultIniFilename();          iniFile := GetDefaultIniFilename();
688          SetIniFile(iniFile);          SetIniFile(iniFile);
689    
         if isUserIniExists() then begin  
           iniFile := GetUserIniFilename();  
           SetIniFile(iniFile);  
         end;  
   
690          if not IsTaskSelected('cygtermhere') then          if not IsTaskSelected('cygtermhere') then
691          begin;          begin;
692            RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\Folder\shell\cygterm');            RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Classes\Folder\shell\cygterm');
# Line 767  begin Line 709  begin
709            RegDeleteValue(HKEY_CLASSES_ROOT, 'telnet\shell', '');            RegDeleteValue(HKEY_CLASSES_ROOT, 'telnet\shell', '');
710          end;          end;
711    
712          SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0);
713    
714        end; // ssDone        end; // ssDone
715     end; // case CurStep of     end; // case CurStep of
716  end; // CurStepChanged  end; // CurStepChanged
# Line 778  var Line 722  var
722    conf    : String;    conf    : String;
723    confmsg : String;    confmsg : String;
724    app     : String;    app     : String;
725    userdoc : String;    i, res  : integer;
   i, res : integer;  
726  begin  begin
727    case CurUninstallStep of    case CurUninstallStep of
728      usPostUninstall:      usPostUninstall:
# Line 791  begin Line 734  begin
734          ini[4] := '\broadcast.log';          ini[4] := '\broadcast.log';
735    
736          conf := CustomMessage('msg_del_confirm');          conf := CustomMessage('msg_del_confirm');
737          app     := ExpandConstant('{app}');          app  := ExpandConstant('{app}');
         userdoc := ExpandConstant('{userdocs}');  
738    
739          // delete config files          // delete config files
740          for i := 0 to 4 do          for i := 0 to 4 do
# Line 804  begin Line 746  begin
746              if res = IDYES then              if res = IDYES then
747                DeleteFile(buf);                DeleteFile(buf);
748            end;            end;
           buf := userdoc + ini[i];  
           if FileExists(buf) then begin  
             confmsg := Format(conf, [buf]);  
             res := MsgBox(confmsg, mbInformation, MB_YESNO or MB_DEFBUTTON2);  
             if res = IDYES then  
               DeleteFile(buf);  
           end;  
749          end;          end;
750    
751          // delete registory          // delete registory
# Line 823  begin Line 758  begin
758            end;            end;
759          end;          end;
760    
761            SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0);
762    
763          // directory is deleted only if empty          // directory is deleted only if empty
764          RemoveDir(app);          RemoveDir(app);
765        end;        end;
# Line 856  Name: {app}\copyfont.bat; Type: files Line 793  Name: {app}\copyfont.bat; Type: files
793  Name: {app}\copyfont.pif; Type: files  Name: {app}\copyfont.pif; Type: files
794  Name: {app}\libeay.txt; Type: files  Name: {app}\libeay.txt; Type: files
795    
796  [_ISToolPreCompile]  [InnoIDE_PreCompile]
797  Name: makechm.bat  Name: makechm.bat
798  Name: build.bat; Parameters: rebuild  Name: build.bat; Parameters: rebuild
799  ; Name: build.bat  ;Name: build.bat

Legend:
Removed from v.3577  
changed lines
  Added in v.4511

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