vs2010 MFC中配置GDI+不能使用,出现106个错误

royjwy 2011-11-17 10:36:58
配置过程:
1.建立了一个对话框项目,在项目属性--配置属性--连接器--输入--附加依赖项中添加 “gdiplus.lib”(debug,活动debug都试过)
2.在“stdafx.h”中添加
#include <GdiPlus.h>
#include <comdef.h>(此语句是网上查到的,添加和不添加都试过,报错一个都没少)
using namespace Gdiplus;
3.在项目 CXXXApp(XXX为项目名称)中添加两个变量
GdiplusStartupInput m_start;
ULONG_PTR m_token;(变量名随意)
4.在 CXXXApp 的InitInstance函数中添加
GdiplusStartup(&m_token,&m_start,NULL);
5.重写CXXXApp 的ExitInstance函数
GdiplusShutdown(m_token);
return CWinApp::ExitInstance();

然后报错有106个。。。。

错误 1 error C2146: 语法错误: 缺少“;”(在标识符“GraphicsState”的前面) c:\program files (x86)\microsoft sdks\windows\v7.0a\include\gdiplusenums.h 28 1 GDItest
错误 2 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int c:\program files (x86)\microsoft sdks\windows\v7.0a\include\gdiplusenums.h 28 1 GDItest
错误 8 error C2065: “META_SETBKCOLOR”: 未声明的标识符 c:\program files (x86)\microsoft sdks\windows\v7.0a\include\gdiplusenums.h 555 1 GDItest
错误 36 error C2065: “META_OFFSETWINDOWORG”: 未声明的标识符 c:\program files (x86)\microsoft sdks\windows\v7.0a\include\gdiplusenums.h 569 1 GDItest
...全文
720 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lemon_c 2012-03-07
  • 打赏
  • 举报
回复
我也遇到类似问题 还说是未定义标识符“GdiplusStartup”等 还有想问下楼主你的问题是怎么解决的 非常感谢啊~~~
royjwy 2012-01-15
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 xuyu19900103 的回复:]

怎么解决的呀??我也遇到相同的问题,求解。。谢谢
[/Quote]

不好意思,你把你的问题具体说说把,你有没有按照GDI+上面的流程走
xu_y 2011-12-28
  • 打赏
  • 举报
回复
怎么解决的呀??我也遇到相同的问题,求解。。谢谢
xunxun 2011-11-18
  • 打赏
  • 举报
回复
使用/MD编译
royjwy 2011-11-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 xunxun1982 的回复:]

使用/MD编译
[/Quote]
我解决了已经
xunxun 2011-11-17
  • 打赏
  • 举报
回复
不要在stdafx.h随便加东西

在其他你自定义的头文件或者源文件里加gdi的东西
royjwy 2011-11-17
  • 打赏
  • 举报
回复
我仔细看了下,基本都是gdipluscolor.h,gdiplusenums.h,gdiplusstypes.h里面没有定义标识符例如UINT,INT等常见类型,怎么回事啊
royjwy 2011-11-17
  • 打赏
  • 举报
回复
怎么没人帮忙啊,对我很重要的,网上查的方法都试过了都不行,好像是gdiplusenums.h的问题,里面连UINT都说没有定义过
royjwy 2011-11-17
  • 打赏
  • 举报
回复
写了这么多,这么详细,求解答
royjwy 2011-11-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xunxun1982 的回复:]

不要在stdafx.h随便加东西

在其他你自定义的头文件或者源文件里加gdi的东西
[/Quote]我在项目头文件中加了gdi+可以用了,但是还是有问题能不能继续请教一下,我在做这三步的时候
3.在项目 CXXXApp(XXX为项目名称)中添加两个变量
GdiplusStartupInput m_start;
ULONG_PTR m_token;(变量名随意)
4.在 CXXXApp 的InitInstance函数中添加
GdiplusStartup(&m_token,&m_start,NULL);
5.重写CXXXApp 的ExitInstance函数
GdiplusShutdown(m_token);
return CWinApp::ExitInstance();

出现了一下错误\:
8 IntelliSense: #error 指令: Please use the /MD switch for _AFXDLL builds f:\microsoft visual studio 2010\vc\atlmfc\include\afxver_.h 81 3
错误 7 error C2065: “m_start”: 未声明的标识符 f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.cpp 52 1 GDItest
错误 1 error C2146: 语法错误: 缺少“;”(在标识符“m_start”的前面) f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.h 31 1 GDItest
错误 2 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.h 31 1 GDItest
错误 3 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.h 31 1 GDItest
错误 4 error C2146: 语法错误: 缺少“;”(在标识符“m_start”的前面) f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.h 31 1 GDItest
错误 5 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.h 31 1 GDItest
错误 6 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int f:\visual c++ 数字图像处理开发入门与编程实践\gditest\gditest\gditest.h 31 1 GDItest
能不能帮忙帮我看下

65,184

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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