1

手動で開始すると、2 つのスクリプトが動作しています。

マウス カーソルを画面外に移動する:

[system.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | out-null
[System.Windows.Forms.Cursor]::Position = New-Object System.Drawing.Point(1999,100)

タイトル HUD で開いている chrome ブラウザがある場合は、キオスク モードにします。

[void] [System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic")             
[Microsoft.VisualBasic.Interaction]::AppActivate("Hud - Google Chrome")
[void] [System.Reflection.Assembly]::LoadWithPartialName("'System.Windows.Forms")     
[System.Windows.Forms.SendKeys]::SendWait("{F11}")

それらを Windows 7 のスケジュールされたタスクに入れた場合、それらは機能しません。

スクリプトファイルを呼び出すバッチファイルを開始すると機能します

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noninteractive -command "&C:\Users\Miniuser\Documents\chromeHUD.ps1"

ただし、スケジュールされたタスクでバッチファイルを開始した場合はそうではありません。

スケジュールされたタスクで UI 要素にアクセスできないようです。

何か案は?

4

3 に答える 3

1

alroc が回答したように、別のコンテキスト/セッションで実行されます。

これを渡すための回避策を見つけることができませんでした...純粋なpowershellを使用しています...しかし、wscriptで仕事を終わらせることができました。

PSスクリプトで、これでクロムを開きます

    (new-object -com wscript.shell).run("http://localhost/",3)

デフォルトのブラウザがフルスクリーンで開きます。タスク スケジューラの sendkeys でこれを使用できます。

于 2013-07-11T09:46:01.283 に答える
1

スクリプトがスケジュールされたタスクとして実行される場合、スクリプトは別のコンテキスト/セッションで実行され、「見る」ことができる GUI も、既存のセッションと対話する方法もありません。

于 2012-12-09T13:40:21.667 に答える