###前提・実現したいこと
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認証画面は別プロセス扱いなのか
非表示となりませんでした。
(マクロダイアログボタンだけが非表示になる。)
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
あなたの回答
tips
プレビュー