首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

VC6.0MFC上使用GDI++编译链接通不过的解决方案之一(syntax error : identifier 'Count')

2012-07-31 
VC6.0MFC下使用GDI++编译链接通不过的解决方案之一(syntax error : identifier Count)在写那个CSDN博文提

VC6.0MFC下使用GDI++编译链接通不过的解决方案之一(syntax error : identifier 'Count')

                           在写那个CSDN博文提取的时候因为要显示用户的头像在对话框上面,自然想到的就是使用大名鼎鼎的GDI+了,但是在我准备使用gdi库,加入头文件,引入lib之后,引发的错误吓了我一跳!32个错误。后面根据有人的博文看到要在stdafx里面写成如下,错误减少到16个

#ifndef ULONG_PTR#define ULONG_PTR unsigned long*#include "GdiPlus.h"using namespace Gdiplus;#endif#pragma comment(lib,"gdiplus.lib")

 

16个错误:简直不敢相信,因为我在另外一个vc6.0的工程里面使用的是同样的代码(仅仅是包含头文件和引入库)却没有一点错误,

苦苦的百度+Google关键字“GDI+   error C2061: syntax error : identifier 'Count'  ”还是没有找到答案,在一些技术群里面讨论了很久,有的说vc6.0太老了

我有点不相信,因为我有个从别人那里拷贝来的工程已经通过编译链接了,只好继续尝试各种方法

后来一想,因为要使用gdi+库的话,总是要设置一下IDE路径,我看了一下我的路径设置,如下,

好吧,有人说VC6.0太老了也许对太新的SDK里面GDI+支持不好,所以我就重新下载了一个GDIPlus.zip解压在

D:\Program Files\Microsoft Visual Studio\VC98\GDIPlus

VC6.0MFC上使用GDI++编译链接通不过的解决方案之一(syntax error : identifier 'Count')

 

修改路径设置如下,将我们自己的GDI放在上面,而不是替换SDK的路径

 VC6.0MFC上使用GDI++编译链接通不过的解决方案之一(syntax error : identifier 'Count')

后来转念一想,为什么有个工程又可以在不修改路径的情况通过编译链接呢,

我的猜想是,因为开始的时候那个工程已经在别人机子上编译好了,再在我机子上编译的话,gdi+那部分就不会再引入我机子上的gdi+里面的(联系pch的作用,将外部框架的头文件编译好了)

便于他人检索,贴出错误提示,有什么不对的地方,欢迎留言指正

vc6.0支持的gdi+下载地址http://download.csdn.net/detail/lilien1010/4449349

d:\program files\microsoft sdks\windows\v6.0a\include\gdiplustypes.h(744) : error C2061: syntax error : identifier 'Count'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplustypes.h(744) : error C2146: syntax error : missing ';' before identifier 'BYTE'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusheaders.h(196) : error C2061: syntax error : identifier '__out_ecount'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusflat.h(2347) : error C2061: syntax error : identifier '__out_bcount'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusflat.h(2355) : error C2061: syntax error : identifier '__out_bcount'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusflat.h(2388) : error C2061: syntax error : identifier '__out_ecount'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(123) : error C2065: '__out_ecount' : undeclared identifierd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(123) : error C2146: syntax error : missing ')' before identifier 'LPWSTR'd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(123) : error C2433: 'GetFamilyName' : 'inline' not permitted on data declarationsd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(123) : error C2350: 'FontFamily::GetFamilyName' is not a static memberd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(123) : error C2440: 'initializing' : cannot convert from 'int' to 'enum Gdiplus::Status'        Conversion to enumeration type requires an explicit cast (static_cast, C-style cast or function-style cast)d:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(125) : error C2059: syntax error : ')'d:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(126) : error C2143: syntax error : missing ';' before '{'d:\program files\microsoft sdks\windows\v6.0a\include\gdiplusfontfamily.h(126) : error C2447: missing function header (old-style formal list?)d:\program files\microsoft sdks\windows\v6.0a\include\gdiplusimagecodec.h(37) : error C2660: 'GdipGetImageDecoders' : function does not take 3 parametersd:\program files\microsoft sdks\windows\v6.0a\include\gdiplusimagecodec.h(56) : error C2660: 'GdipGetImageEncoders' : function does not take 3 parameters

热点排行