Tutorial: Adding Apple (and other) Keyboard Layouts to Windows Guests

Post Reply
andyp73
Volunteer
Posts: 1631
Joined: 25. May 2010, 23:48
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Assorted Linux, Windows Server 2012, DOS, Windows 10, BIOS/UEFI emulation

Tutorial: Adding Apple (and other) Keyboard Layouts to Windows Guests

Post by andyp73 »

When using VirtualBox with non-US keyboards there can be issues with mapping obscure keys into Windows guests.

In my particular case, I have a 2017 iMac host with a UK layout bluetooth Magic Keyboard (Apple part A1644). Installing my Windows guests with the default "United Kingdom" keyboard the € (Option+2) and # (Option+3) symbols don't appear.

To resolve this requires the use of the Microsoft Keyboard Layout Creator and a keyboard layout file which allows the keys to be mapped appropriately*.

There are a number of pre-existing keyboard layout files for international Apple keyboards available on the internet (where people have previously gone through the pain). This link has onward links to Apple German, Apple Swedish and Apple UK English layout files. If you have to compile your own layout file then Keyboard Layout Creator packages it up as an installer which you can then run. This should give you the new keyboard as an option under Control Panel -> Region and Language.

According to the System Requirements for the Keyboard Layout Generator:
Supported Operating System

Windows Server 2003, Windows Server 2003 Service Pack 1, Windows Vista, Windows XP, Windows XP Service Pack 1, Windows XP Service Pack 2

.NET Framework 2.0
I have only verified the process on Windows 7 and Windows 10 but should be the same on the earlier Windows versions.

*On the Apple Magic Keyboard, the Option key used for getting € and # appears to map to the Windows as "Alt" key but Keyboard Layout Creator doesn't appear to support that. In the Windows guests they are mapped using Control+Option on the keyboard instead.
My crystal ball is currently broken. If you want assistance you are going to have to give me all of the necessary information.
Please don't ask me to do your homework for you, I have more than enough of my own things to do.
Post Reply