0x00D83DDA 处有未经处理的异常(在 DXFont.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常

来源:互联网 发布:淘宝海狗鞭 编辑:程序博客网 时间:2024/04/30 04:41

本文只针对于《逐梦之旅windows 游戏编程从零开始》之中D3D框架篇遇到的问题,不是本问题的请绕行,以免耽误您的时间!


在浅墨的框架中从创建窗口到消息循环中是这样一段代码:
HWND hwnd = CreateWindow(wndClass.lpszClassName,WINDOW_TITLE,WS_POPUP|WS_THICKFRAME,
CW_USEDEFAULT,CW_USEDEFAULT,WINDOW_WIDTH,WINDOW_HEIGHT,NULL,NULL,hInstance,NULL);
Direct3D_Init(hwnd);
ShowWindow(hwnd,SW_NORMAL);
UpdateWindow(hwnd);

而在笔者代码中是这样写的:
HWND hwnd = CreateWindow(wndClass.lpszClassName,WINDOW_TITLE,WS_POPUP|WS_THICKFRAME,
CW_USEDEFAULT,CW_USEDEFAULT,WINDOW_WIDTH,WINDOW_HEIGHT,NULL,NULL,hInstance,NULL);
ShowWindow(hwnd,SW_NORMAL);
UpdateWindow(hwnd);
Direct3D_Init(hwnd);

这在没有D3D渲染部分的代码时都正确,一旦加上渲染部分的代码,就会出现标题所示的异常,而解决办法就是使用第一种顺序(而在平时,我一般都是写在窗口更新之后的,没有什么问题,这一次真是乌龙了)!
0 0
原创粉丝点击