0

Windows XP でセッションをロックまたはロック解除するときに「ビープ」アラートを出す ps1 スクリプトを実行しようとしています。私はすでにそれを取得しており、VBS スクリプトを介してそのスクリプトを呼び出そうとしています。問題は、VBS を手動で実行すると、Power Shell ウィンドウが表示され、明らかに、それを閉じるとスクリプトの実行が停止することです。これが私のコードです:

これはps1です:

$sysevent = [microsoft.win32.systemevents]

Register-ObjectEvent -InputObject $sysevent -EventName SessionSwitch -Action {[console]::Beep();Write-host ($args[1]).Reason}

そして、これはVBSです:

objShell = CreateObject("Wscript.Shell") objShell.Run("powershell.exe -noexit c:\beep.ps1") を設定します。

パワーシェルウィンドウを防ぎ、バックグラウンドでスクリプトを実行する方法を知っている人はいますか?

4

1 に答える 1

0

ps1 スクリプトは必要ありません。この 1 つのライナーを使用します。

WScript.CreateObject ("WScript.Shell").Run "cmd /c " & chr(7),0,False

http://forums.mozillazine.org/viewtopic.php?p=11616563で、コンパイルできる小さな C プログラムや nircmd コマンドなどの役立つ提案もいくつか見つかりました。

于 2012-08-01T09:44:02.157 に答える