我们有一个需要使用Direct3D的应用程序.具体来说,它至少需要DirectX 9.0c版本4.09.0000.0904.虽然这应该出现在所有较新的XP机器上,但它可能不会安装在较旧的XP机器上.我如何以编程方式(使用C++)确定它是否已安装?我希望能够向用户提供Direct3D无法使用的信息消息.
调用DirectXSetupGetVersion:http://msdn.microsoft.com/en-us/library/microsoft.directx_sdk.directsetup.directxsetupgetversion
你需要包含dsetup.h
以下是该网站的示例代码:
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)); }