QA@IT
«質問へ戻る

質問を投稿

TeraTermマクロのSSH認証画面を非表示にしたい

■前提・実現したいこと
Windows Serverで
TeraTermマクロを利用してSSHによる機器の制御を行っています。
処理の全体制御はWindowsバッチ(.bat)により行い、
そのバッチをジョブ制御ソフトで制御します。

処理はバックグラウンドで実行する想定のため、
すべての画面は非表示としたいです。

■発生している問題・エラーメッセージ
.batよりttpmacro.exeを起動し、
connectコマンドによりSSH接続を実行しているのですが、
このときのSSH認証画面がどうしても非表示にできません。
(エラーなどは特に起きていません。)

■該当のソースコード
【test.bat】

"C:\XXXX\ttpmacro.exe" /V "C:\XXX\test.ttl" arg

【test.ttl】

connect '/V HOSTNAME /ssh /2 /auth=publickey /user=USERNAME /passwd=PASSWORD /keyfile=KEYFILE'

■試したこと
①/Iオプションによる最小化
TeraTermの/Vオプションに加え
/Iオプションの併用によりSSH認証画面も最小化することはできますが、
フォーカスがTeraTermに移ってしまい
ユーザ操作を阻害してしまうため採用できません。

②VBSのrunメソッドによる画面非表示
VBSのrunメソッドで画面非表示を試みましたが、
SSH認証画面は別プロセス扱いなのか
非表示となりませんでした。
(マクロダイアログボタンだけが非表示になる。)

【test.vbs】

Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
Return = WshShell.Run("C:\XXXX\ttpmacro.exe" & " " & "C:\XXXX\test.ttl" & " " & arg, 0 , TRUE)
WScript.Echo Return
Set WshShell = Nothing

■補足情報(言語/FW/ツール等のバージョンなど)
OS : Windows Server 2012 R2
TeraTerm : 4.78

**■前提・実現したいこと**
Windows Serverで 
TeraTermマクロを利用してSSHによる機器の制御を行っています。
処理の全体制御はWindowsバッチ(.bat)により行い、 
そのバッチをジョブ制御ソフトで制御します。

処理はバックグラウンドで実行する想定のため、 
すべての画面は非表示としたいです。

**■発生している問題・エラーメッセージ**
.batよりttpmacro.exeを起動し、 
connectコマンドによりSSH接続を実行しているのですが、 
このときのSSH認証画面がどうしても非表示にできません。 
(エラーなどは特に起きていません。)

**■該当のソースコード**
【test.bat】
```ここに言語を入力
"C:\XXXX\ttpmacro.exe" /V "C:\XXX\test.ttl" arg
```

【test.ttl】
```ここに言語を入力
connect '/V HOSTNAME /ssh /2 /auth=publickey /user=USERNAME /passwd=PASSWORD /keyfile=KEYFILE'
```
**■試したこと**
①/Iオプションによる最小化 
TeraTermの/Vオプションに加え 
/Iオプションの併用によりSSH認証画面も最小化することはできますが、 
フォーカスがTeraTermに移ってしまい 
ユーザ操作を阻害してしまうため採用できません。

②VBSのrunメソッドによる画面非表示 
VBSのrunメソッドで画面非表示を試みましたが、 
SSH認証画面は別プロセス扱いなのか 
非表示となりませんでした。 
(マクロダイアログボタンだけが非表示になる。)

【test.vbs】
```ここに言語を入力
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
Return = WshShell.Run("C:\XXXX\ttpmacro.exe" & " " & "C:\XXXX\test.ttl" & " " & arg, 0 , TRUE)
WScript.Echo Return
Set WshShell = Nothing
```
■補足情報(言語/FW/ツール等のバージョンなど)
OS : Windows Server 2012 R2 
TeraTerm : 4.78