调用IDirect3D9::CreateDevice()时按下Ctrl+Alt+Del失败的问题

  项目组测试提了一个很有创意的bug,在系统启动时就按下Ctrl+Alt+Del,然后点击取消,这是系统crash,跟踪程序发现时IDirect3D9::CreateDevice()调用失败,查看返回值是一个烦人的 D3DERR_INVALIDCALL(不知道MS怎么发明了这么一个返回值,真是佩服!),我认真的看了一下传入参数,没有任何问题。于是乎不知道怎么解决,试了一下DX自带的工具DirectX Viewer,在启动时按下三键弹出窗口提示创建设备出错,又在3DMax中试了一下,发现3DMax在这种情况下仍然能启动,不过启动后四个试图都是白色的,点击几下后会crash。于是乎,得出如下结论:这种错误可能是IDirect3D9::CreateDevice()的一个bug,或者这种操作属于用户的误操作造成的,暂时没有办法解决,只能是让系统在这种情况下弹出对话框提示创建设备失败并退出程序重新启动。如果各位遇到类似的情况并且找到解决办法烦请留言,谢谢!

你可能感兴趣的:(游戏开发)