Jump to content

This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.

Installation on Vista

1 reply to this topic


  • Full Members
  • 63 posts

Posted 01 February 2007 - 19:39

Our product does not support installation on Vista. So, the installation script checks for the WinMajor and WinMinor, and if it is 6.0, the installation aborts.

However, as soon as the installation aborts, the Program Compatibility Assistant starts up and prompts that there was an error during the installation. It asks "Do you want to re-run the program in recommended settings?"

If we choose to re-run, then Vista launches our product installation in a mode that simulates and earlier version of Windows (Windows XP).

Now, the installation thinks that the OS is XP and goes ahead with the installation, which it should not.

When the installation is re-run, I checked for the following to see if I can find out if this is a Vista installation:
- WinMajor.WinMinor return 5.1 indicating XP
- RegDBGetKeyValueEx of HKLM\Software\Microsoft\Windows NT\CurrentVersion returned 5.1 instead of 6.0, indicating XP
- A check for Vista specific DLLs (%winsysdir%\dfe.dll, for example) shows that this DLL does not exist, indicating that this is not Vista

Is there any way of detecting that the OS is Vista, even when re-run by the Program Compatibility Assistant in a simulated environment?

Please help.


Stefan Krueger

Stefan Krueger


  • Administrators
  • 13,269 posts

Posted 01 February 2007 - 19:45

The compatibility mode is designed extavtly to tricj such checks. But checking for the file version of a system file (user.exe or such) might work.