MacからAWS上のWindows Server 2019にリモートデスクトップ接続するとUSキーボード配列になる場合の対処法

パソコン・ブログ

手元のMacから、AWS(Amazon Web Services)上にあるWindows Server 2019マシンに接続したときに、キーボード配列が変になることがあります。対応方法を記します。

前提条件

私は普段はMacを使っているのですが、個人的にAWS上にWindows Server 2019のマシンを走らせており、プログラミングなどの目的でリモートデスクトップでログインすることがあります。しかし、(もしかしたら何か設定があるのかもしれませんが)AWS上でWindowsマシンのインスタンスを作成すると英語版のWindowsになるため、表示言語だけではなくキーボードの設定なども英語になってしまいます。

この場合、キーボード配列も一般的な日本語配列ではなく英語配列のものとして認識されてしまうため、日本向けMacのキーボードと異なった文字が入力されてしまいます(アスタリスク(*)を打とうとすると、ダブルクオーテーションマーク(")が入力されるなど)。このままだと不便で仕方がないので、何とかしてキーボードの配列を日本語キーボードと同じものにします。

  • 手元のマシン:macOS 10.15 (Catalina) 日本語
  • 接続先のマシン:AWS上にあるWindows Server 2019 英語版
  • 接続に使うソフトウェア:Microsoft Remote Desktop 10

実際に行った方法

どれが一番クリティカルなのかははっきりとしないのですが、行った設定変更を記します。

日本語入力を有効に

初期設定だと入力に使う言語が英語しか無いため、日本語を受け付けることから始めます。Advanced keyboard settingsの画面でinput methodをJapaneseにするなどしてください(他にも何かいじったはず)。

レジストリを変更してレイアウトファイルを変更

こちらのサイトには、レジストリを変更してキーボードレイヤードドライバを変える方法が記されています。

Mac からのRDP 接続で日本語キーボードを設定する - Qiita
はじめに Mac から Windows へ RDP でリモートデスクトップ接続した時にJISキーボードがUS配列にセットされ、日本語入力できないことが多々あります。 このエントリでは RDP 接続時のキーマッピングの仕組みと日本...

ただ、私の場合はこれを修正して再起動しただけでは、US配列から日本語配列に変わることはありませんでした。

どうやら、コンソール接続の場合は上記のレジストリを変更することで問題が解消するようなのですが、リモートデスクトップの場合は異なるレジストリを変更する必要があるようです。

Windows 10 RS4 へのリモート デスクトップ接続時に、UWP アプリへの入力時のみキーボード配列が異なる事象について

具体的には、

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000411

のLayout FileをKBDJPN.DLLからkbd106.dllに修正する必要があるようです。CurrentControlSetより後の部分が異なることにご注意ください。変更したら接続先のマシンを再起動しましょう。

終わりに

今回は、レジストリを変更することで対応できました。いろいろなサイトを見ていると、他にも「日本語入力をONにした状態でリモートデスクトップ接続を行う」「Microsoft Remote DesktopではなくParallels Clientを使う」などの情報もありましたが、これらは(少なくとも私の環境では)意味がありませんでした。

なお、レジストリを下手に変更すると、最悪の場合はマシンが起動しなくなります。レジストリを変更する場合は十分注意してください。

タイトルとURLをコピーしました