複数のテレビがそれぞれ別のコンピュータに接続されています。目標は、2つのアプリケーションを通した連続的なループ循環で/ setfocusを表示することです。これはすべてのテレビで同期させる必要があります。もともと、私はalt + escキーを送信することで、タスクバーのすべてのアプリケーションからサイクルを設定していました。これは問題なく動作しましたが、すべてのテレビで同期をとるのに苦労しました。だから、私はAppActivateを使ってsetfocusを行い、偶数/奇数分に基づいてウィンドウを切り替える。これは現在同期されていますが、画面は常に画面をちらつくように毎秒ウィンドウにフォーカスを合わせようとしています。どうすればそれを避けることができますか?助言がありますか??? コードの一部です。VBScript - AppActivateを使用してフォーカスをウィンドウに切り替える
' Loop lasts 1 second
intSleep = 1000
Set wshShell = CreateObject("WScript.Shell")
'repeat process indefinetly
Do while infiniteloop=0
a = minute(time())
intResult = a Mod 2 ' to check for even/odd minute
If intResult = 0 Then
'display window1
if wshShell.AppActivate "Display - [Dashboard]" = false then
wshShell.AppActivate "Display - [Dashboard]"
end if
ElseIf intResult = 1 Then
'display window2
if wshShell.AppActivate "Display - [TEST]" = false then
wshShell.AppActivate "Display - [TEST]"
end if
End If
Wscript.Sleep intSleep
Loop
お寄せいただきありがとうございます!はい、睡眠時間を増やすと、評価数は最小限に抑えられますが、スクリプトファイルが各PCで異なる時刻に開始されるため、マシンは同期されません。ウィンドウがアクティブかどうかを確認する方法はありますか? – choco
私はまた、現在のアクティブなウィンドウを調べることはこれには便利だと思ったが、それは可能ではないようだ。同期が必要な場合は、各マシンで同時にスクリプトを実行するタスクをスケジュールしてから、コンピュータの時計がインターネットから時刻を取得するように設定することをお勧めします。 – Jobbo
私はそれを試みます。オプションはVBスクリプトと残って..再びありがとう。 – choco