2008-09-17 82 views
3

我们有一个需要使用Direct3D的应用程序。具体而言,它至少需要DirectX 9.0c版本4.09.0000.0904。虽然这应该出现在所有新的XP机器上,但它可能不会安装在较旧的XP机器上。我如何以编程方式(使用C++)确定它是否已安装?我希望能够向用户发送一条信息消息,说明Direct3D不可用。如何确定安装了哪个版本的Direct3D?

回答

0

根据DirectX 9.0 SDK(2004年夏季)文档,请参阅\ Samples \ Multimedia \ DXMisc \ GetDXVer上的GetDXVer SDK示例。

0

一个快速谷歌搜索变成了this article用于标识版本号在注册表中的位置,然后提供一个case语句,将内部版本号映射到我们更熟悉的版本号。

另一个快速Google搜索在C++中为reading from the registry举例说明。

享受...

+0

哎呀,破链接! – 2013-05-20 12:36:57

0

是,使用在DirectX所示机构在2009年3月的DirectX SDK安装样品。 (请在示例浏览器的“系统”类别下查找。)

请勿使用注册表!那些东西没有证件,并且不能保证能够正常工作。

唯一受支持的方式是使用DirectSetup API,它显示在DirectX安装示例中。我还在第二十四章中介绍了这些内容。安装和设置在我的书The Direct3D Graphics Pipeline中。您可以在上面的URL免费下载该章节。

相关问题