これはそれほど難しいことではないようですが、マウスを動かしたり、キーボードのキーを押したりするのと同じことをして、PCをウェイクアップするにはどうすればよいですか?
私のPCはWindows10を実行しており、15分後にモニターをスリープモードにするだけです。 PCの残りの部分はまだ起動しており、Hibernateなどを使用していません。
EventGhostを使用して、PCにディスプレイをウェイクアップするように指示するTCP/IPコマンドを受信しようとしていますが、それは非常に困難です。
コマンドを使用してPCをウェイクアップするにはどうすればよいですか? (つまり、マウスを動かすのと同じです)
私のPCはWindows10を実行しており、15分後にモニターをスリープモードにするだけです。 PCの残りの部分はまだ起動しており、Hibernateなどを使用していません
ソリューションパート1
バッチスクリプトを作成します(以下のソリューションパート2の例)キーボードのキーストロークをエミュレートします。 Windowsタスクスケジューラでスケジュールし、コンピュータを起動して実行するように指示します。タスク指定された時間に「コンピューターをスリープ解除」する必要がある場合に備えて、スリープ状態のモニターだけではありません(詳細については、以下のソースを参照してください)。指示)。
(繰り返しになりますが、キーボードストロークをエミュレートするWindowsネイティブのロジックとともに、スケジューリングに使用するバッチスクリプトの例( SendKeys )スリープ状態のモニターをウェイクアップします。)
ソリューションパート2
ただし、以下のバッチスクリプトロジックを使用して、動的に構築および実行されたVBSスクリプトでキーボードのキーストロークをバッチでネイティブにエミュレートします。これは、例として論理的に実行するバッチスクリプトになります。
スペースバーを押すようにスペースを複数回送信するバッチスクリプトの例
(必要な他のキーは SendKeys でも使用できます)
@ECHO OFF
SET TempVBSFile=%tmp%\~tmpSendKeysTemp.vbs
:VBSDynamicBuild
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
ECHO Wscript.Sleep 500 >>"%TempVBSFile%"
ECHO WshShell.SendKeys " " >>"%TempVBSFile%"
CSCRIPT //nologo "%TempVBSFile%"
GOTO EOF