The following page(s) contain instructions on using Remote Desktop to connect to Faculty & Staff Windows computers on the UMKC campus (from off-campus). Your campus computer must be powered on to receive connections.
I would like to be able to map the CMD key to output a CTRL key on my Mac, but only when accessing the Microsoft Remote Desktop Connection for Mac application. Remote Desktop Connection lets you map a number of other keys via its Preferences. But not the CMD key. In any other Mac application, CMD would act like CMD.
Don't know your computer name or don't know if your account has the correct permissions? Find out here. If you need assistance, please contact the IS Technology Support Center or your IT Liaison.
Please note: Before you attempt to connect to UMKC resources remotely, please make sure your operating system (Apple OS X) has all applicable security updates installed.To connect to your campus Windows PC from a Mac you will need to use the Microsoft Remote Desktop application for Mac version 10.3.8 (or higher). If you are using a university-owned Mac, you may already have this app installed. Please contact the Technology Support Center or your IT Liaison if you have questions about using this software on a university-owned Mac.
Supported | Default Icon | Client Name |
Microsoft RDP v10 Link to Download | ||
Microsoft RDP v8 | ||
Apple RDC |
Mac OS X Remote Desktop Connection Instructions
- Open the Microsoft Remote Desktop application
- Click the '+' icon
- Select PC
- For PC Name, enter the name of the remote computer to connect to. Or check How to find my computer name
- For User Account, click the dropdown to change the setting
- Click Add User Account
- For User Name, type UMKCusername@umsystem.edu in DomainUsername
- For Password, type your UMKC Username Password. Note: you will need to update your Remote Desktop settings every time you change your UMKC Username password.
- Click Save
- For Friendly Name, enter the PC name
- Click on no gateway to change the setting
- Select Add Gateway from the dropdown
- For Server Name, enter tsg.umkc.edu
- For User Account, click Use PC User account
- Select your UMKC username from the list
- Click Add
- Click Add again
- To initiate the connection, double click on your PC Name tile
- Click Show Certificate
- Click Always Trust to prevent seeing this warning again for the PC specified
- Click Continue
Microsoft Remote Desktop Mac Keyboard Mapping Mac
If you have not recently connected to this computer there will be a delay as your profile is created. This is normal.You are now connected!
For over a year now, Microsoft provides a free application called Microsoft Remote Desktop to access a computer (usually running Windows) through RDP from a Mac or iOS or Android device. This version should replace another free application provided by Microsoft: Remote Desktop Connection Client for Mac. If I remember well, the latter had taken his time to fully manage Mac keyboards in a foreign language. It looks the same for this new App: this problem does not seem a priority. Indeed, for now this app assumes you are using a PC keyboard on your Mac.
As Microsoft Remote Deskto is a promising product (in particular, it supports RemoteApp from a Mac, xfreerdp being a little disappointing on this point), I thought it deserved a little search. I finally found two different methods to overcome the problem, one looking more usable than the other.
About keyboard management by operating systems
Schematically, we can say that a keyboard is managed by the operating system (OS) at 2 levels. A level we could call “hard” and another “soft”. At the “hard” one, electrical signal corresponding to the movements of the keys on the keyboard are sent to the OS, it calls the keyboard driver that interprets these signals and translated them into push key or release key events. Those will be used downstream by the OS. For example, if you push the first key next to the tabulation one, the “hard” part will say the OS: the key “0x0” was pressed. Here come the “soft” level that defines what should be done with this information: the concept of keyboard layout come into action. One can decide, if the keyboard is QWERTY that key “0x0” displays an “A” and if the keyboard is QWERTY, it displays a “Q”.
On the Mac, there is an open-source tool for working at the “hard” level: Karabiner and another to work at the “soft” one: Ukelele. The second is slightly simpler approach, so I started there, especially because I had already used it for VNC connections to Windows computers from a Mac. Unfortunately, soon I came to the conclusion that Microsoft Remote Desktop is working at the “hard” level and therefore it was useless to try to redefine a new layout on the client-side.
With this conclusion, there are only two ways:
- Working at the “hard” level with Karabiner on the client
- Working at the “soft” level on the RDP server
An easy workaround if you are connecting to Windows Server 2012 or Windows 8
On Windows 2012, it appears that the management of keyboard layouts has been greatly improved. Also, if you define a keyboard layout for your Mac client, you can:
- Propose this layout from the login screen that allows your users to type passwords despite key mismatches between Mac and PC keyboard (the user must be active and trained to do this)
- Request that all previously open applications change to the new keyboard layout if ever you were using an other one before
Now, I do not have computers running Windows Server 2012, so I can’t confirm that. That’s my readings, but if it’s indeed the case, you just have to define (or find on the Internet) a layout for your Mac keyboard and just ask to change to this keyboard layout when you connect from your Mac. If you can’t find one of those layouts, you can define one with the intuitive tool to create a layout (at the “soft” level) under Windows: Microsoft Keyboard Layout Creator (MSKLC).
The solution for connections to Windows 2008 R2 or Windows 2007: Karabiner on the client
Karabiner is an open-source solution used to be called KeyRemap4MacBook and which gradually replaced DoubleCommand. This application is no longer maintained. Historically, it was use to switch the Cmd and Ctrl keys on your Mac keyboard (often useful while going to Mac from the PC world). Karabiner seems a very good and very configurable tool, but not particularly user-friendly. It is easy to use, but the creation of a specific mapping remains difficult. Moreover, in our case it’s enough to drive you up the wall.
The remapping is done in 2 steps:
- First, I identify the key that is typed on the keyboard (quite easy with the tool provided by Karabiner: EventViewer)
- Then, I define the key that should be pressed instead. There, it gets complicated: we must assume that if you were using a PC keyboard on your Mac, it would work. So you need a picture of a French PC keyboard and that of a US keyboard.
- Example for the “=” key on Mac French keyboard that corresponds to the “! ” on PC. I want an “=”: Imagine that I have a PC keyboard, to have a “=”, one must press the key to the left of the backspace key. On a standard Mac keyboard (i.e. American) this key is the same and is called EQUAL key.
- Example for the “§” key on the French Mac keyboard that corresponds to the “-” key on PC. I want a “§”: Imagine that I have a PC keyboard, to have a “§”, one must press the key to the left of the right shift key. On a standard Mac keyboard (i.e. American) this key is called SLASH key.
- …
Finally, we can tell karabiner to apply this remapping for a particular application: Microsoft Remote Desktop.
This leads to this private.xml file:
Another solution to connect to Windows 2008 R2 or Windows 2007 but on the server-side
In fact, we will fill the gaps in these versions of Windows versus Windows 8 or Server 2012, i.e.:
Microsoft Remote Desktop Mac Keyboard Mapping Keyboard
- allow the choice of a compatible keyboard layout from the Windows login screen
- automatically update the keyboard layout on connection using the task scheduler, Cassia and kbswitch2
Make available new keyboard layouts on the login screen of Windows 7 or Windows 2008 R2
On Windows, the login screen is started by a service that runs with Local System ID (UID S-1-5-18). If you want other languages or keyboard layouts available at login, simply assign them to Local System. Unfortunately, I don’t know any graphical way to achieve this. The only one I know is to go through the registry by copying all or part of the key “Keyboard Layout” of an account that has been configured with languages and keyboard layouts you whish. Little howto:
- Connect with your credentials and set the languages and keyboard layouts as you would like them to be available on the login screen.
- Open the registry and export the key “Keyboard Layout” of HKEY_CURRENT_USER.
- Replace in the file the string “HKEY_CURRENT_USER” by “HKEY_USERSS-1-5-18”.
- Double-click on the file with the appropriate privileges to add the new key to Local System.
Run a script at session startup or when reconnecting to an already open session
Run a script on login is really easy, but executing one on reconnection to an already open session is far less documented. A way that works is to go through the task scheduler which allows the execution of a script when reconnecting. As it also allows a script execution on a new session, it’s really the right tool to use.
Create a script that identifies the RDP client application and selects accordingly the right keyboard layout
Microsoft Remote Desktop Mac Keyboard Mapping Windows 10
Our script is based on two tools:
- Cassia, a library that aggregates various information about the RDP connection. It comes with a SessionInfo.exe that do the job if you use the latest version of the library which binaries are not distributed at present. So just recompile from source with .Net 3.5.
- kbswitch2 a small open source application that switches all previously open applications to a given keyboard layout and launch every new application to that new chosen layout. In other words, it does what Windows 8 or Windows Server 2012 do that lacks on Windows 7 or Windows 2008 R2.
The script is easy:
Of course the layout “French – Custom” is this French Mac keyboard for Windows.