Gdi与MSVC编译器得到奇怪的“本机图形”运行时错误

Gdi与MSVC编译器得到奇怪的“本机图形”运行时错误,第1张

概述好的,直到现在我总是用GCC编码,所以我是MSVC的新手(这是错误的).我用GDI plus编译了一个最小的Win Api程序.它编译得很好,但几乎在启动时就会出现运行时错误(我认为在调用WM_PAINT消息时会出现运行时错误).这是我看到的:   我的代码没什么特别的,只是显示一个矩形. (当我使用GDI时它工作正常,但不适用于GDI). 我的代码: HDC hdc = GetDC(hwnd); 好的,直到现在我总是用GCC编码,所以我是MSVC的新手(这是错误的).我用GDI plus编译了一个最小的Win API程序.它编译得很好,但几乎在启动时就会出现运行时错误(我认为在调用WM_PAINT消息时会出现运行时错误).这是我看到的:
 

我的代码没什么特别的,只是显示一个矩形. (当我使用GDI时它工作正常,但不适用于GDI).

我的代码:

HDC hdc = GetDC(hwnd);InvalIDateRect(hwnd,NulL,FALSE);ulONG_PTR token;Gdiplusstartupinput inp;Gdiplusstartup(&token,&inp,0);Graphics g(hdc);g.Clear(color(0,0));g.DrawRectangle(new Pen(color(0,0)),10,100,100);GdiplusShutdown(token);ValIDateRect(hwnd,NulL);

通过调试我发现运行时错误几乎就是Graphics g(hdc);构造函数被调用.我在Google等上找不到任何东西.我完全迷失了.有帮助吗?

解决方法 WinAPI函数总是以这种或那种方式表示成功.您需要检查GetDC是否返回了有效句柄.请参阅 Return value section of GetDC.输出中的访问冲突也指向某处的无效指针.如果DC有效,请检查其他所有内容.确保传递指向需要地址的指针等. 总结

以上是内存溢出为你收集整理的Gdi与MSVC编译器得到奇怪的“本机图形”运行时错误全部内容,希望文章能够帮你解决Gdi与MSVC编译器得到奇怪的“本机图形”运行时错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1225686.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存