RDPでキーボードがJISではなくUSになってしまう問題
RDP 接続すると US キーレイアウトになってしまう!
日本語キーボードを使っているのに、RDP 先で英語キーボードとして認識されてしまうことがあります。
この問題、地味に嫌ですよね。。。
公式の解決方法を探す
作業はホスト側(リモートマシン)で行います。
https://blogs.technet.microsoft.com/askcorejp/2018/06/08/rs4-rdp-keyboardlayout/
にある「回避策 2.」を実行すると良いです。
記事には「UWP アプリへの入力時のみ」となっていますが、全アプリで発生しました。
全アプリ UWP なのかな?
以上で治れば、以下の対応は不要です。
レジストリを直接書き換える方法
レジストリエディタを開き、直接 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000411
を KBDJPN.DLL
から kbd106.dll
に書き換え、再起動するだけで良いです。
レジストリ操作用ファイルを使う方法
なお対応後も Windows アップデートなどで、設定が戻ってしまうことがちょいちょいあります。
毎度レジストリキーを探して編集するのも面倒なので、操作を自動化するために.reg
ファイルを作成します。
手順 1 レジストリをいじるファイルを作成
.reg
ファイルはレジストリ設定を保存しておくものです。
適当に rdp-jp.reg
というレジストリ変更用のBOM付きUnicodeファイルを作成し、下記のコードを貼り付けてください。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000411]
"Layout Display Name"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,\
52,00,6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,\
00,32,00,5c,00,69,00,6e,00,70,00,75,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,\
2d,00,35,00,30,00,36,00,31,00,00,00
"Layout File"="kbd106.dll"
"Layout Text"="Japanese"
貼り付けたらファイルを保存してください。
自分で.reg ファイルを作成する場合
見知らぬ人が作成した.reg
コードなんて信用できるか!という慎重な方は、自分で書き出すことも出来ます。
対象のキーを選択した状態でレジストリエディタから「ファイル」→「エクスポート」とします。
Layout File
の箇所を kbd106.dll
に書き換えてください。
手順 2 レジストリの書き換えと OS 再起動
- ファイルをダブルクリック
- 管理者権限が求められるので承認
- Windows を再起動
以上で有効になります。Mac からの接続も問題なく JIS キーとして認識されました。
やったね!