2017-10-07 158 views
0

我正在开发一个应用程序,可以检测我系统上安装的DirectX版本。例如,如果DirectX 9和DirectX 11安装在我的系统上,则我的程序必须检测这些安装并显示安装的版本。但是,我已经将如何做到这一点如何检测DirectX的安装版本

编辑不知道: 我不想使用输入dxdiag UI检测到的版本,我想我的程序来检测版本。和所有已安装的版本必须检测不只是被预装由OS

+0

重复的https://stackoverflow.com/questions/22223859/find-out-directx-version – Dale

+1

这样的程序已经存在于每台Windows机器上。运行dxdiag.exe来查看。您可以使用/ x选项运行它来生成.xml文件。 –

+0

Microsoft不会为此提供API。你应该参考@ Dale_dale12提到的帖子 – Asesh

回答

2

支持的操作系统或最高级别的一个你很可能无法列出所有安装了DirectX版本。我在游戏平台的支持页面称为Steam跨越this interesting article传来:

试图手动检查的正确版本是非常复杂的,因为有许多文件都必须像DLL搜索目前与个人系统配置选项路径使情况复杂化。另外,每个新版本的D3DX运行时都可能会改变依赖关系和所需的检查。

正如mentioned by Hans Passant可以通过运行dxdiag /x <output file>生成包含您的计算机信息的各种条目的XML文件,然后解析或反序列化文件在您的应用程序中获取最高的已安装版本。

相关问题