首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

小弟我准备用DX的D3DXSaveSurfaceToFile进行截图,GetDisplayMode报错

2013-03-22 
我准备用DX的D3DXSaveSurfaceToFile进行截图,GetDisplayMode报错?[解决办法] 那是因为你调用CreateDevice

我准备用DX的D3DXSaveSurfaceToFile进行截图,GetDisplayMode报错?

                            
[解决办法]
 那是因为你调用CreateDevice的时候,第3个参数hFocusWindow你设置的是Null导致这个函数调用失败,lpDevice仍然是个无效的指针。然后你用这个无效指针调用GetDisplayMode,当然就会报错。
 你把窗口句柄传进去CreateDevice就正常了。
 CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd,...)
[解决办法]
  对于CreateDevice这样的DX函数,一般都有一个HResult的返回值,你要检测一下返回值,看是否调用成功了。
  比如你代码里面的返回值Return_CreateDevice,要做下面这样的检验
  if(FAILED(Return_CreateDevice))
  {
     return E_FAIL;
  }

热点排行