获取显卡型号?
我想知道如何从代码中获取显卡型号/品牌,特别是 DirectX 9.0c(从 C++ 代码中)。
I was wondering how I can get the graphics card model/brand from code particularly from DirectX 9.0c (from within C++ code).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
DirectX 中最简单的方法是通过 IDirect3D9::GetAdapterIdentifier。
只需创建一个 D3DADAPTER_IDENTIFIER9 对象,将指向它的指针传递给 GetAdapterIdentifier。 DirectX 将显卡描述作为字符串填写在“描述”字段中。 它还包括有关该卡的显示设备以及您拥有的驱动程序版本的信息。
您会得到类似这样的信息:
“nvd3dum.dll”
The easiest way in DirectX is through IDirect3D9::GetAdapterIdentifier.
Just create a D3DADAPTER_IDENTIFIER9 object, pass a pointer to it to GetAdapterIdentifier. DirectX fills out the graphics card description as a string in the Description field. It also includes information on which display device the card is, and what driver version you have.
You get something like this:
"nvd3dum.dll"
在运行时,您可以查询设备型号和供应商:
在 OpenGL 中,使用命令 glGetString(GL_VENDOR) 或 GL_RENDERER 或 GL_VERSION 来获取您想要的信息。
在 DirectX 9 中,该信息似乎位于 Microsoft 配置系统中,并且是从设备数据库中查询的。 这是本文档的第 3 节,其中还有示例代码: http ://msdn.microsoft.com/en-us/library/bb204848(VS.85).aspx
使用相同的系统,您可以获得诸如显卡的内存量、驱动程序编号等信息。
At runtime, you can query the device model and vendor:
In OpenGL, use the command glGetString(GL_VENDOR) or GL_RENDERER or GL_VERSION to get the information you're after.
In DirectX 9, it appears the info is in the Microsoft config system, and is queried from the device database. It's section 3 of this document, which also has example code: http://msdn.microsoft.com/en-us/library/bb204848(VS.85).aspx
Using the same system you can get such information as the amount of ram the video card has, the driver number, etc.
看看我书中的第 2 章 Direct3D Direct3D 图形管道。 请参阅第 2.12 节“识别特定设备”。
Take a look at Chapter 2. Direct3D from my book The Direct3D Graphics Pipeline. See section 2.12, Identifying a Particular Device.
您可以使用“DirecX Diagnostic Tool”API,例如 DX SDK 中的示例 DxDiagOutput
http://msdn.microsoft.com/en -us/library/ee416986%28v=VS.85%29.aspx
You can use "DirecX Diagnostic Tool" API, like in sample DxDiagOutput from DX SDK
http://msdn.microsoft.com/en-us/library/ee416986%28v=VS.85%29.aspx
然后获取适配器的描述(adapters->Description)
Then get the description of adapters (adapters->Description)