Microsoft DirectX 8.1 (C++) |
Retrieves the version number of the Microsoft® DirectX® components that are currently installed.
INT WINAPI DirectXSetupGetVersion( DWORD *pdwVersion, DWORD *pdwRevision );
If the function succeeds, it returns nonzero.
If it fails, it returns 0.
The DirectXSetupGetVersion function can be used to retrieve the version and revision numbers before or after the DirectXSetup function is called. If it is called before DirectXSetup is invoked, it gives the version and revision numbers of the DirectX components that are currently installed. If it is called after DirectXSetup is called, but before the computer is restarted, it gives the version and revision numbers of the DirectX components that take effect after the computer is restarted.
The version number in the pdwVersion parameter is composed of the major version number and the minor version number. The major version number is in the 16 most significant bits of the DWORD when this function returns. The minor version number is in the 16 least significant bits of the DWORD when this function returns. The version numbers can be interpreted as follows:
DirectX version | Value pointed to by pdwVersion |
---|---|
DirectX 1.0 | 0x00000000 |
DirectX 2.0 | 0x00000000 |
DirectX 3.0 | 0x00000000 |
DirectX 5.0 | 0x00040005 |
DirectX 6.0 | 0x00040006 |
DirectX 7.0 | 0x00040007 |
DirectX 8.1 | 0x00040008 |
There is no version 4 of DirectX.
The version number in the pdwRevision parameter is composed of the release number and the build number. The release number is in the 16 most significant bits of the DWORD when this function returns. The build number is in the 16 least significant bits of the DWORD when this function returns.
The following sample code fragment demonstrates how the information returned by DirectXSetupGetVersion can be extracted and used.
DWORD dwVersion; DWORD dwRevision; if (DirectXSetupGetVersion(&dwVersion, &dwRevision)) { printf("DirectX version is %d.%d.%d.%d\n", HIWORD(dwVersion), LOWORD(dwVersion), HIWORD(dwRevision), LOWORD(dwRevision)); }
Version and revision numbers can be concatenated into a 64-bit quantity for comparison. The version number is in the 32 most significant bits and the revision number is in the 32 least significant bits.
Windows NT/2000/XP: Requires Windows NT 4.0 SP3 or later.
Windows 98/Me: Requires Windows 98 or later. Available as a redistributable for Windows 98.
Header: Declared in Dsetup.h.
Import Library: Use Dsetup.lib.