Ran into this issue just a few days ago. I have been trying to set up a relatively cross-platform dev environment, and finally got around to tweaking the PHP side of things. When I went to set up a greenfield PHP project, I realized I needed to configure PHP on a per-site basis. The easiest tool for the job was PHP Manager (via the Web Platform Installer), but for some reason it wouldn’t install. The error message was cryptically generic — one of those that essentially said, “you dun goofed; good luck finding out where, tho”. So I dug into the settings and discovered that it was doing a check for the Windows version.
Well, guess what? The installation wasn’t failing for any really good excuse, such as true incompatibility or security restrictions or stuff like that. It was failing because it wasn’t encountering the version of Windows it was expecting. For a moment there I actually had to check my calendar to see if it was really 2016 instead of 1996. You just don’t see code that purposefully scuttles forward compatibility all that often these days.
To correct this issue, you will need to make a temporary change to the registry for the duration of the installation. Go into
and look for an entry called
Open it up, and switch it over from Hexadecimal to Decimal. In its default state, it will be 10 (for Windows 10), you need to lower it to at least 9 (and maybe 8 or 7 if that doesn’t work). This will bring what IIS identifies as the platform it is installed on down to a version that PHP Manager will willingly install onto.
Once you are done installing the PHP Manager, it is a good idea to change this setting back to what it was before (10, or Ax0 in Hexadecimal) to avoid any other potential issues with IIS itself in the future.