自動化されたタスクを実行したい VM があります (つまり、自動化されたタスクは実際の VM で実行されます)。
VM は Windows 2008 サーバーです。
タスク スケジューラにタスクを追加しました。RDP 経由でマシンにログインすると、右クリックして [実行] をクリックしてタスクを実行できます。
ただし、RDP セッションがオフになっている場合 (VM 上のユーザーはまだログインしている場合)、タスクは実行を試みますが、notepad.exe を開くだけで、テキストを書き込みません。
vbs スクリプトは次のとおりです (ここで使用するために単純化されています...)。
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "Notepad.exe"
Do Until Success = True
Success = objShell.AppActivate("Notepad")
Wscript.Sleep 1000
Loop
objShell.SendKeys "This is a test."
Windows XP マシンでこのタスクを完全に実行しましたが、何が問題を引き起こしているのか理解できません。
RDP 経由で接続されていない場合、VM にキーボードが見つからないように見えます。RDP 経由で接続すると、MSTSC は VM にキーボードを送信し、タスクを正しく実行できます。
ありがとう、
デビッド