-1

Hyper-V によってホストされている 2 つのリモート デスクトップがあります。

リモート デスクトップ「A」に、実行したい .bat ファイルがあります。

リモート デスクトップ「B」で、マシン「A」の .bat ファイルを呼び出す準備ができた psexec cmd で cmd を開きました。

"path-to\\psexec.exe" \\ip -u domain\username -p pswd -i cmd.exe /c "path-to\\myFile.bat %*"

マシン「A」の .bat ファイルに含まれるスクリプトは UI で動作するため、実際の画面を開く必要があるため、2 つの RD に同時に接続しています。ただし、マシン "B" で psexec コマンドを呼び出すと、cmd はエラーを返しますが、サーバーの Hyper-V マネージャーのインターフェイスを介して RD "A" を直接開くと、psexec コマンドは期待どおりに機能します。

誰かがなぜこれが起こるのか説明できますか?

4

1 に答える 1

1

Windows の UI はセッション 0で実行されます。セッション 0 を使用するプログラムをリモートで実行するには、システム ユーザー (-sフラグ) として実行する必要があり、使用するセッションを指定できます (-iフラグ)。この回答には、関連するヒントもいくつかあります。

于 2016-06-24T03:15:08.273 に答える