我不知道我怎么能特别是从的DirectX 9.0c得到的代码显卡型号/品牌(从C ++代码)。
Answer 1:
在运行时,可以查询设备型号和供应商:
在OpenGL中,使用命令glGetString(GL_VENDOR)或GL_RENDERER或GL_VERSION得到你之后的信息。
在DirectX 9,它显示的信息是在Microsoft配置系统,并从设备数据库中查询。 这是该文件,其中也有示例代码的第3部分: http://msdn.microsoft.com/en-us/library/bb204848(VS.85).aspx使用相同的系统,你可以得到这样的信息的量公羊显卡了,司机号码等
Answer 2:
在DirectX最简单的方法就是通过IDirect3D9 :: GetAdapterIdentifier 。
只要创建一个D3DADAPTER_IDENTIFIER9对象,指针传递给它GetAdapterIdentifier。 的DirectX填写显卡的描述中说明字段的字符串。 这也包括在其显示设备的卡信息,以及什么驱动程序版本你有。
你得到的东西是这样的:
- 说明: “NVIDIA的GeForce GTX 570”
- 设备: “\ \ DISPLAY1。”
- 司机: “nvd3dum.dll”
Answer 3:
看看第2章的Direct3D从我的书的Direct3D图形管道 。 见2.12,标识特定设备的。
Answer 4:
你可以在样DxDiagOutput使用“DirecX诊断工具” API,就像从DX SDK http://msdn.microsoft.com/en-us/library/ee416986%28v=VS.85%29.aspx
Answer 5:
IDirect3D9* d3dobject = Direct3DCreate9(D3D_SDK_VERSION);
D3DPRESENT_PARAMETERS d3dpresent;
memset(&d3dpresent, 0, sizeof(D3DPRESENT_PARAMETERS));
d3dpresent.Windowed = TRUE;
d3dpresent.SwapEffect = D3DSWAPEFFECT_DISCARD;
UINT adaptercount = d3dobject->GetAdapterCount();
D3DADAPTER_IDENTIFIER9* adapters = (D3DADAPTER_IDENTIFIER9*)malloc(sizeof(D3DADAPTER_IDENTIFIER9) * adaptercount);
for (int i = 0; i < adaptercount; i++)
{
d3dobject->GetAdapterIdentifier(i, 0, &(adapters[i]));
}
然后得到适配器的说明(适配器 - >说明)
文章来源: Get the graphics card model?