Windows 10 users have been complaining since the weekend that VMware Workstation no longer runs after a cumulative Windows 10 Update prevents it from starting.
Only older versions of VMware Workstation are affected, but even users willing to pay for an upgrade may face other compatibility issues.
The culprit seems to be KB4517211, which upgrades Windows 10 to build 18362.387. Although not mentioned in the knowledgebase, this update adds entries to the Windows Compatibility database, the result being that attempting to run VMware Workstation 14 or below gives the message "VMware Workstation Pro can't run on Windows".
In a thread on Microsoft's site, one affected user complained that upgrading their 100 VMware Workstation licences would cost €11,500.
There are other factors, though. A user trying to run the networking software GNS3 found that after upgrading, the software no longer worked. In addition, newer versions of VMware do not work on some older processors, so an upgrade is not always possible.
Windows maintains this kind of compatibility information in a Shim Database called sysmain.sdb. This is part of the Application Compatibility Framework which is able to patch applications on the fly as well as informing the user of compatibility issues. Some desperate users (not only in the VMware case) have tried replacing this file with an older version to get blocked applications to run.
This is not a sound strategy, since it is a system component and tinkering with it could have unpredictable effects on other applications or system stability. In addition, relaxing permissions on sysmain.sdb could make it a security vulnerability.
That said, some users who have done this subsequently reported that VMware 14 then works, leaving them puzzled as to why Microsoft chose to block it.
Another solution is to block the update, but it seems likely that a future update will cause the problem to return. Blocking updates is also not a good long-term strategy, since it leaves Windows 10 vulnerable to security issues.
Plenty of old applications run well on Windows 10 and in general compatibility is fair. Low level applications like hypervisors are more likely to run into issues though, making this type of problem understandable. What is needed is a better mechanism for flagging the issues in advance so that admins have a chance to prepare. ®
Hat tip to Mayank Parmar for spotting the blunder.