DirectDrawEnumerateEx函数枚举的不全?

BloodFighter 2006-11-15 05:58:00
如题,我现在的机器是上有两块显卡,一块是PCI-E*16的GForce 7600 还有一块插在普通PCI插槽的ATI的RAGE 128 VR,各接一个显示器,设备显示工作正常。

这些天在网上找资料,通过DirectDrawEnumerateEx枚举显卡,就只会找到主显卡GF7600, 而我通过EnumDisplayMonitors函数,就可以找到两个监视器。

我现在希望通过GUID来在不同的显卡上创建表面,可是现在只有通过DirectDrawEnumerateEx的回调函数获得的GUID只有主显卡的0x00000000,找不到普通PIC插槽的ATI显卡。
DirectDrawEnumerateEx函数的调用如下:

hr = DirectDrawEnumerateEx(DDisplayEnumerate, NULL, DDENUM_ATTACHEDSECONDARYDEVICES|DDENUM_NONDISPLAYDEVICES);

或者
HINSTANCE h = LoadLibrary("ddraw.dll");
if (h != NULL)
{
LPDIRECTDRAWENUMERATEEX lpDDEnumEx;
lpDDEnumEx = (LPDIRECTDRAWENUMERATEEX)GetProcAddress(h, "DirectDrawEnumerateExA");
if (lpDDEnumEx)
{
lpDDEnumEx(DDisplayEnumerate, NULL, DDENUM_ATTACHEDSECONDARYDEVICES | DDENUM_NONDISPLAYDEVICES);
}
FreeLibrary(h);
}

结果一样,请知道的朋友帮忙查一下问题
...全文
191 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzyblog 2006-11-24
  • 打赏
  • 举报
回复
不知道,给你顶起来

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧