Menu

The Version Lie tests identify problems responsible for some of the most common application compatibility issues in Windows. Improperly detecting the version of the Microsoft Windows operating system or using hard-coded version information can cause the application to fail when the operating system is upgraded.

Properties

  • Major version

  • This is the major version of the Windows OS. The default value used for the check is current major version + 2. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • Minor version

  • This is the minor version of the Windows OS. The default value used for the check is current minor version + 2. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • Build number

  • This is the build number associated with the OS version. The default value used for the check is current minor version + 1000. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • Service pack major

  • This is the major version of the service pack applied to the OS. The default value used for the check is 0 and no check is done by default. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • Service pack minor

  • This is the minor version of the service pack applied to the OS. The default value used for the check is 0 and no check is done by default. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • Suite mask

  • This is the product suite for the Windows OS (example: Professional, Home, Business, and Ultimate etc.) The default value used for the check is 0 and no check is done by default. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • Product type

  • The default value used for the check is 0 and no check is done by default. If the value is changed by the user, the check is done against the value provided. The property can be provided as a DWORD or HEX value.

  • CSD version

  • The default value used for the check is NULL and no check is done by default. If the value is changed by the user, the check is done against the value provided. The property should be provided as a STRING value.

Additional information

The primary purpose of the HighVersionLie test is to ensure that applications that run on Windows Vista run correctly as future versions of Windows are released. This test is not intended for internal system components or applications that ship with the operating system. Running this test on these components causes unforeseen results as these components expect a certain version to be returned. This test is designed for applications that perform version checking and respond based on the operating system version information returned.

You can configure this test to provide the major version, minor version, and build number that you want returned to the application.

This test records all calls to the GetVersion and GetVersionEx APIs.

A debugger is not required to gain information from this test.

Error

Stop Code

Called the GetVersionEx API

2200, 2201, 2202, 2203

Called the GetVersion API

2204