If Windows virtual machine is configured to use SHIFT key to turn CapsLock off instead of CapsLock key, CapsLock behavior is unpredictable in Windows
(Start > Control Panel > Region and Language > Keyboards and Languages > Change Keyboards > Advanced Key Settings > Press Shift key).
The possible reason is because Virtual Machine and Mac CapsLock state are synced automatically by default and CapsLock key is used for that.
If you want to effectively use Shift key to turn off CapsLock instead of CapsLock key, do the following:
- Open Terminal (/Applications/Utilities/Terminal)
- Type in the following command and hit ‘Enter’:
defaults write 'com.parallels.Parallels Desktop' 'HID Host Hook.CAPSLOCK Sync' -bool false
- This command will disable automatic CapsLock synchronization between Host OS and Guest OS and will allow them to have different capslock states.
NOTE: if you disable this feature, Keyboard LEDs will become out of sync, it means they will still correctly indicate the state of CapLock on the Mac side but will not correctly display CapsLock state in Windows.
If you want to revert the changes and enable automatic synchronization once again, executhe the following command in Terminal:
defaults delete 'com.parallels.Parallels Desktop' 'HID Host Hook.CAPSLOCK Sync