Is there a cleaner solution than the 3 workarounds below? i.e. My IT department doesn’t want me to do Workaround 1 and the other workarounds are unacceptable.
Applies to VMware Workstation 10 and 11 on Windows 8.1 host. Fails on Windows 7 and Windows 8.1 VM and probably others like XP and Ubuntu.
Several Windows 8.1 Updates create inability for VMware Workstation to query the scaling for secondary display, so it defaults to the scaling for primary display. Reported mouse position is offset by the difference between the primary and secondary display’s scaling (around 80 to 100 pixels in X and Y direction).
Issue use case:
This is not as prevalent in desktops. It’s very common if you have a laptop with 1080P resolution (1920 x 1080) on a 15-inch display. Dell/Windows sets that to 125% scaling by default (so people won’t complain). Attach an external 1080P (1920 x 1080) 23-inch display (try VGA port, but may not matter). This gets set to 100% by default. This allows everything in the external display to be “native” resolution and allows VM screen size to be quite high. The internal display may have 1080P resolution, but everything gets blown-up by 125%. You can’t fit as much detail on the screen.
a) To navigate, click once, wait 1 second and click again without moving the mouse. The second click will work fine for selecting menus, etc. but you can’t do drag operations or double click anything. Do this over any screen element that doesn’t require a double click.
b) To see incorrect mouse position, move the mouse a little, then HOLD the left mouse button down (without moving it again). It will draw a “selected” rectangle on the desktop (it thinks you dragged the mouse). The opposite corner from the mouse represents how far off the x and y position are due to scaling. Note: If you click twice without moving, no rectangle will be drawn.
Workaround 1 (best):
Don’t install the offending Windows 8.1 updates listed below. Or uninstall them if your IT department allows it. Don’t rely on Windows System Restore if issues… it will fail to restore. Do a Ghost 15.0, Acronis or other full disk image backup. Incremental might work too.
Result: Hassle using Windows Updates and may violate employer’s IT policy.
Change both displays to 100%. To change, click Control Panel->Display->Change Display Settings->”Make text and other items larger or smaller”. Then turn on “Let me choose one scaling level for all my display”. Then keep or choose “Smaller – 100%” radio button. If you can live with that tiny font on your 15” laptop screen, you don’t need to refrain from installing the above Windows updates.
Result: Undesirable primary screen resolution on host.
Turn off “Display scaling on high DPI settings”. This setting is not in VMware itself. Right-click on the VMware shortcut in start menu and choose “Open file location”. Right-click the VMware Workstation shortcut file there and choose “Properties”. Result: Undesirable VM screen resolution. Prevents you from using higher screen resolutions within the VM.
Result: Undesirable screen resolution in VM. Must decrease from “1920 x 1200” to “1440 x 900”… which is a pain, for example, if doing Android development within the VM.
Update for Windows 8.1 for x64-based Systems: KB2967917, KB2975719, KB3000850, KB3042216
Security Update for Windows 8.1 for x64-based Systems: KB2973201, KB2993651, KB3000061, KB3002885, KB3013455, KB3034344, KB3045171, KB3057839, KB3070102, KB3078601, KB3087039
Note: there are earlier updates that also caused issue, but I didn’t have those numbers handy. Those older updates should be superseded if you have installed the latest Windows Updates offered as of 9/29/2015. Any one of these updates creates the issue; it’s not a combination of these that is causing the issue. I have been tracking these individually for over a year. It’s probably one DLL file that is the issue… and that DLL file gets updated by many updates.
Related VMware Community:
a) Mouse problem on second display using WS 10 (regression?):
b) The mouse inside a VM is unusable...