208 |
|
|
209 |
[Run] |
[Run] |
210 |
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 |
211 |
Filename: {tmp}\Setup_LogMeTT_2_9_7.exe; Components: LogMeTT |
Filename: {tmp}\Setup_LogMeTT_2_9_8_1.exe; Components: LogMeTT |
212 |
Filename: {tmp}\Setup_TTLEditor_1_2_1.exe; Components: TTLEdit |
Filename: {tmp}\Setup_TTLEditor_1_2_1.exe; Components: TTLEdit |
213 |
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 |
214 |
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 |
282 |
ja.comp_TTXAlwaysOnTop=常に最前面に表示できるようにする |
ja.comp_TTXAlwaysOnTop=常に最前面に表示できるようにする |
283 |
en.comp_TTXRecurringCommand=Recurring Command can be used |
en.comp_TTXRecurringCommand=Recurring Command can be used |
284 |
ja.comp_TTXRecurringCommand=定期的に文字列を送信する |
ja.comp_TTXRecurringCommand=定期的に文字列を送信する |
285 |
en.msg_AppRunningError=Setup has detected that Tera Term is currently running.%n%nPlease close all instances of it now, then click Next to continue. |
en.msg_AppRunningError=Setup has detected that %s is currently running.%n%nPlease close all instances of it now, then click Next to continue. |
286 |
ja.msg_AppRunningError=セットアップは実行中の Tera Term を検出しました。%n%n開いているアプリケーションをすべて閉じてから「次へ」をクリックしてください。 |
ja.msg_AppRunningError=セットアップは実行中の %s を検出しました。%n%n開いているアプリケーションをすべて閉じてから「次へ」をクリックしてください。 |
287 |
|
|
288 |
[Code] |
[Code] |
289 |
const |
const |
359 |
end; |
end; |
360 |
} |
} |
361 |
|
|
362 |
function CheckAppUsing(Filename:String) : integer; |
function CheckFileUsing(Filename:String) : integer; |
363 |
var |
var |
364 |
TmpFileName : String; |
TmpFileName : String; |
365 |
begin |
begin |
384 |
Result := 0; |
Result := 0; |
385 |
end; |
end; |
386 |
|
|
387 |
function CheckAppsUsing() : integer; |
function CheckAppsUsing() : string; |
388 |
var |
var |
389 |
FileDir : String; |
FileDir : String; |
390 |
FileName : array[0..6] of String; |
FileName : array[0..6] of String; |
391 |
|
FileDesc : array[0..6] of String; |
392 |
i : integer; |
i : integer; |
393 |
flag : boolean; |
ErrMsg : String; |
394 |
begin |
begin |
395 |
FileDir := ExpandConstant('{app}'); |
FileDir := ExpandConstant('{app}'); |
396 |
FileName[0] := FileDir + '\ttermpro.exe'; |
FileName[0] := FileDir + '\ttermpro.exe'; |
400 |
FileName[4] := FileDir + '\cygterm.exe'; |
FileName[4] := FileDir + '\cygterm.exe'; |
401 |
FileName[5] := FileDir + '\Collector.exe'; |
FileName[5] := FileDir + '\Collector.exe'; |
402 |
FileName[6] := FileDir + '\Collector_org.exe'; |
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 |
|
|
|
flag := True; |
|
411 |
for i := 0 to 6 do |
for i := 0 to 6 do |
412 |
begin |
begin |
413 |
if flag = True then |
case CheckFileUsing(FileName[i]) of |
414 |
begin |
1: |
415 |
case CheckAppUsing(FileName[i]) of |
// Failed to delete. In use. |
416 |
1: |
begin |
417 |
// failed to delete. in use. |
if Length(Result) > 0 then |
418 |
begin |
Result := Result + ', ' + FileDesc[i] |
419 |
Result := 1; |
else |
420 |
flag := False; |
Result := FileDesc[i] |
421 |
end; |
end; |
422 |
-1: |
else |
423 |
// failed to copy/rename |
// -1: Failed to copy/rename |
424 |
begin |
// 0: OK |
425 |
Result := -1; |
// NOP |
|
flag := False; |
|
|
end; |
|
|
else |
|
|
// OK |
|
|
end; |
|
426 |
end; |
end; |
427 |
end; |
end; |
428 |
|
|
605 |
var |
var |
606 |
uninstaller : String; |
uninstaller : String; |
607 |
uninstaller2 : String; |
uninstaller2 : String; |
608 |
ResultCode: Integer; |
ResultCode : Integer; |
609 |
iniFile : String; |
iniFile : String; |
610 |
|
ErrMsg : String; |
611 |
begin |
begin |
612 |
Result := True; |
Result := True; |
613 |
|
|
647 |
wpSelectDir: |
wpSelectDir: |
648 |
begin |
begin |
649 |
|
|
650 |
ResultCode := CheckAppsUsing(); |
ErrMsg := CheckAppsUsing(); |
651 |
if ResultCode = 1 then |
if Length(ErrMsg) > 0 then |
652 |
begin |
begin |
653 |
MsgBox(CustomMessage('msg_AppRunningError'), mbError, MB_OK); |
MsgBox(Format(CustomMessage('msg_AppRunningError'), [ErrMsg]), mbError, MB_OK); |
654 |
Result := False; |
Result := False; |
655 |
end; |
end |
656 |
// if -1, goto next. turn over to Inno Setup. |
else |
657 |
|
// -1: goto next. Turn over to Inno Setup. |
658 |
|
// 0: goto next. No problem. |
659 |
|
// NOP |
660 |
end; |
end; |
661 |
|
|
662 |
wpSelectComponents: |
wpSelectComponents: |