web-dev-qa-db-ja.com

リモートデスクトップ:Ctrl-Alt-左矢印/ Ctrl-Alt-右矢印をリモートPCに送信する

キーの組み合わせを使用する必要があります Ctrl-Alt-Left Arrow そして Ctrl-Alt-Right Arrow コンピュータ上のアプリケーションで。リモートデスクトップを使用してそのコンピューターに接続すると、リモートデスクトップクライアント(mstsc.exe)またはRDPサーバーの実装がこれらのキーの組み合わせを飲み込みます。コンボは何もしていないようですが、リモートデスクトップ用に予約されているようです。

キーの組み合わせがアプリケーションに送信されるように、この動作を無効にする方法(サポートされているかどうか)はありますか?

40
Fabian Schmied

ホットキー Ctrl+Alt+Left Arrow そして Ctrl+Alt+Right Arrow リモートデスクトップクライアントによって食べられます。それらの唯一の効果は、ホストコンピュータに戻るように切り替えることです。

これは、完全にプログラムされて完了したわけではない、意図された機能のようですが、オフにする方法はありません。これらのホットキーは、Microsoftの公式ドキュメント Remote Desktop Services Shortcut Keys に記載されていません。

解決策1:Microsoft Storeバージョンを使用する

RDPの別のバージョンは、Microsoft Storeの Microsoft Remote Desktop にあります。

このバージョンには、この準実装機能がないため、問題なくこれらのホットキーを使用できます。これはWindows 10バージョン1903で確認されました。

解決策2:クライアントとサーバーの両方でホットキーを変換します

このソリューションは、クライアントとサーバーの両方にインストールされている AutoHotkey を使用して、次のことを行います。

  • クライアントで、上記のホットキーをRDPによって傍受されない他のホットキーに変換します
  • サーバーで、これらのキーを上記のホットキーに変換します。

たとえば、クライアントで次のAutoHotkeyスクリプトを使用して変換できます。
Ctrl+Alt+arrow に Ctrl+Win+arrow

;Send Ctrl+Win+Left when user types Ctrl+Alt+Left
^!Left::
send !#{Left}
return

;Send Ctrl+Win+Right when user types Ctrl+Alt+Right
^!Right::
send !#{Right}
return

サーバーで次のAutoHotkeyスクリプトを使用して変換できます
Ctrl+Win+arrow に Ctrl+Alt+arrow

;Send Ctrl+Alt+Left when user types Ctrl+Win+Left
^#Left::
send !^{Left}
return

;Send Ctrl+Alt+Right when user types Ctrl+Win+Right
^#Right::
send !^{Right}
return

必要に応じて、 #IfWin [Not] Active/#IfWin [Not] Exist のAutoHotkeyコマンドを使用して、これらのホットキーを特定のウィンドウまたはプロセスに制限することができます。

8
harrymc

これまでのポスターと回答に感謝します。これらは私が同様の問題を解決するのに役立ちました:デスクトップPCのテキストエディターに使用するキーボードショートカットがあります。 Ctrl+Alt+...、そして私はマシンにリモートでアクセスするときにそれらを使用できるようにしたかったのです。

このAHKスクリプトを使用して、次のように入力します Win の代わりに Alt 以下のコメント付きコマンドを実行できます。これで、リモートデスクトップPCへのアクセスに使用するPC(つまり、自宅や旅行中)に関係なく、ショートカットを使用できます(WinはAltにかなり近いです)。これが私のAHKスクリプトです。

;Send Ctrl+Alt+Left keys when user types Ctrl+Win+Left
^#Left::
send !^{Left}
return

;Send Ctrl+Alt+Right keys when user types Ctrl+Win+Right
^#Right::
send !^{Right}
return

;Send Ctrl+Alt+Up keys when user types Ctrl+Win+Up
^#Up::
send !^{Up}
return

;Send Ctrl+Alt+Down keys when user types Ctrl+Win+Down
^#Down::
send !^{Down}
return

;Send Ctrl+Alt+Shift+Left keys when user types Ctrl+Win+Shift+Left
^#+Left::
send !^+{Left}
return

;Send Ctrl+Alt+Shift+Right keys when user types Ctrl+Win+Shift+Right
^#+Right::
send !^+{Right}
return

;Send Ctrl+Alt+Shift+Up keys when user types Ctrl+Win+Shift+Up
^#+Up::
send !^+{Up}
return

;Send Ctrl+Alt+Shift+Down keys when user types Ctrl+Win+Shift+Down
^#+Down::
send !^+{Down}
return

注:リモートデスクトップ接続で「Windowsキーの組み合わせを適用...リモートコンピューター上」を使用しているため、このスクリプトリモートコンピューター上を実行します。

これを行うにはより効率的なAHKの方法がおそらくありますが、上記の方法でうまくいきます。これが他の誰かにも役立つことを願っています。

6
iamsolarplexus

使用するため CtrlAlt+ Far Managerでは、次のAutoHotKeyスクリプトを使用しました。

!^Right::
send ^+{F9}
return

!^Left::
send ^+{F8}
return

…どこに CtrlShiftF8/F9 を押したときと同じように機能するFarマクロがあります CtrlAlt+

この回避策は、[プロパティ]で接続オプションキーボードが[このコンピューター上]に設定されている場合にのみ機能します。

2
Zeroes

キーボード設定がRDPの使用方法に適したものに設定されていることを確認してください。 [ローカルリソース]タブで、RDP接続のオプションを確認します。

常にフルスクリーンで接続している場合は「フルスクリーン使用時のみ」に設定し、フルスクリーンでRDPを使用しない場合は「リモートコンピュータ上」に設定します。

RDP Key Combo

2
Windos