私はビジュアルベーシックスクリプト(vbs)を作成しました。スクリプトは音量を100に設定し、YouTubeでミュージックビデオを開始します。スクリプトを実行すると、完全に正常に動作します。手動でコンピューターAで。コンピューターAは、スピーカーに接続され、共用室に大きなスクリーンがあるWindows 10のコンピューターです。別のデバイスからコンピューターAにSSHでログインしてスクリプトを実行し、スピーカーから音楽が流れ、共用室のスクリーンにYouTubeビデオがポップアップ表示されるようにしたいのですが、コンピューター自体で手動で実行すると機能します。SSH自体も機能しますが、コンピューターAに接続されたSSHターミナルでcscript script_name.vbsを実行すると、スクリプトが実行され、エラーメッセージは一切表示されません。しかし、実際にはコンピューターAでは何も行われず、音量は変化せず、YouTubeのポップアップも表示されません。SSH経由でそのスクリプトを実行すると、するコンピュータ A の音量を変更すると、共用ルームのスクリーンに YouTube ビデオがポップアップ表示されます。たとえば、VB スクリプトを使用してビデオをポップアップ表示するには、次のようにします。
set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "firefox.exe", https://youtube-link, "", "", 1
答え1
これは古いものですが、同じ問題を解決しようとしたときに偶然見つけました。次の VB スクリプトを使用しています:
On Error Resume Next
set wshshell = CreateObject("Wscript.Shell")
wshshell.run chr(34) & "d:\icedrive\scripts\Python\MyFirstRepository\DadScheduled.py" & chr(34), 0
set wshshell = Nothing
SSH 経由で Windows マシン上で実行できませんでした (シェル内でシェルを実行することに関係していると思われます)
私は、Windows で VBS スクリプトを実行するスケジュールされたタスクを作成し、それにスケジュール (トリガー) を割り当てないことでこの問題を解決しました。
次に、SSH 経由で PowerShell を使用してスケジュールされたタスクを実行します。
pwsh -command {Start-ScheduledTask -TaskName "\Gabe\ComputerMaintenance"}
これは一時的な対処法だとは思いますが、私のニーズには非常にうまく対応しています。