D2D绘图 _com_error异常

hhhh63 2017-11-20 11:24:35
用D2D绘图,代码如下:
void CMFCApplication1Dlg::OnPaint()
{
CPaintDC dc(this); // 用于绘制的设备上下文
CDCRenderTarget m_RenderTarget; // 渲染器
D2D1_RENDER_TARGET_PROPERTIES props = D2D1::RenderTargetProperties(
D2D1_RENDER_TARGET_TYPE_DEFAULT,
D2D1::PixelFormat(
DXGI_FORMAT_B8G8R8A8_UNORM,
D2D1_ALPHA_MODE_IGNORE),
0,
0,
D2D1_RENDER_TARGET_USAGE_NONE,
D2D1_FEATURE_LEVEL_DEFAULT
);

m_RenderTarget.Create(props);
// Bind the DC to the DC render target.
BOOL r1 = m_RenderTarget.BindDC(dc, (LPCRECT)CRect(0, 0, 100, 100));

m_RenderTarget.BeginDraw(); // 开始画图,完成后必需用EndDraw

// TODO 绘图

HRESULT hr = m_RenderTarget.EndDraw(); // 结束画图
}

运行到m_RenderTarget.BeginDraw();时出现异常
0x75D2AA12 处(位于 MFCGdiInteropSample.exe 中)引发的异常: Microsoft C++ 异常: _com_error,位于内存位置 0x00F8E980 处。

MFCGdiInteropSample是VS2010SP1自带的例子
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Samples\2052\VC2010SP1Samples.zip\C++\MFC\D2D\MFCGdiInteropSample
操作系统Win10x64
请教高手如何解决?
...全文
421 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhhh63 2017-12-07
  • 打赏
  • 举报
回复
很奇怪的问题,我用的是WIN10 Edge 浏览器,每次结贴都说分数不对,换到IE就没问题。 如果是我不会用就请指点一下。 如果是CSDN不兼容,请适当升级一下。 谢谢。
hhhh63 2017-12-07
  • 打赏
  • 举报
回复
解决不了,先这样吧,用了半年多了,好象没出现问题,以后再想办法。
zgl7903 2017-11-29
  • 打赏
  • 举报
回复
try catch 捕捉 _com_error 异常,看看有什么错误信息
hhhh63 2017-11-29
  • 打赏
  • 举报
回复
找了一个堆栈也没有找到问题,那位有心的高手试试这个例子C:\Program Files (x86)\Microsoft Visual Studio 10.0\Samples\2052\VC2010SP1Samples.zip\C++\MFC\D2D\MFCGdiInteropSample 看看有没有这个问题?
赵4老师 2017-11-21
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处,看不懂时双击下一行,直到能看懂为止

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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