在屏幕保护程序中使用GDI+出错!

Sime507 2006-02-16 10:27:24
::TextOut ( hDC, 100, 50, "ABC", 3 ); //此行可以正确显示

Graphics graphics(hDC);

Pen pen(Color(255, 255, 0, 0));
graphics.DrawLine(&pen, 20, 10, 300, 100); //画不出线,但程序不会非法超作

Image image(L"C:\\1.jpg"); //程序非法超作

----------------------------------------
GDI+的使用应该没问题,程序也应该没错。
感觉GDI+与屏幕保护开发包scrnsave.lib有冲突。
...全文
75 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenailin 2006-03-21
  • 打赏
  • 举报
回复
我知道原因了!~需要初始化
//初始化GDI+

GdiplusStartupInput gdiplusStartupInput;

ULONG_PTR gdiplusToken;

GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);

release

ULONG_PTR gdiplusToken;

GdiplusShutdown(m_gdiplusToken);
shenailin 2006-03-21
  • 打赏
  • 举报
回复
同情楼主,我也碰到这样的问题 !
很奇怪我在有的程序能用GDI+有的就不能用
graphics.DrawLine(&pen, 20, 10, 300, 100)!= S_OK

19,468

社区成员

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

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