#include 出错

点击打开原文链接

xxx\GdiPlusImaging.h(67) : error C2501: “MIDL_INTERFACE” : 缺少存储类或类型说明符
xxx\GdiPlusImaging.h(67) : error C2440: “初始化” : 无法从“const char [37]”转换为“int”
        该转换要求 reinterpret_cast、C 样式转换或函数类型转换
xxx\GdiPlusImaging.h(67) : error C2146: 语法错误 : 缺少“;”(在标识符“IImageBytes”的前面)
xxx\GdiPlusImaging.h(67) : error C2470: “IImageBytes” : 看起来像函数定义,但没有形参表;跳过明显的函数体
xxx\GdiPlusImaging.h(67) : error C2059: 语法错误 : “public”
xxx\GdiPlusImaging.h(246) : error C2146: 语法错误 : 缺少“;”(在标识符“id”的前面)
xxx\GdiPlusImaging.h(246) : error C2501: “Gdiplus::PropertyItem::PROPID” : 缺少存储类或类型说明符
xxx\GdiPlusImaging.h(246) : error C2501: “Gdiplus::PropertyItem::id” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(384) : error C2143: 语法错误 : 缺少“)”(在“*”的前面)
xxx\GdiPlusHeaders.h(384) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
xxx\GdiPlusHeaders.h(384) : error C2460: “Gdiplus::Image::IStream” : 使用正在定义的“Gdiplus::Image”
        xxx\GdiPlusHeaders.h(372) : 参见“Gdiplus::Image”的声明
xxx\GdiPlusHeaders.h(384) : error C2501: “Gdiplus::Image::stream” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(384) : error C2146: 语法错误 : 缺少“;”(在标识符“useEmbeddedColorManagement”的前面)
xxx\GdiPlusHeaders.h(384) : error C2501: “Gdiplus::Image::BOOL” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(384) : error C2059: 语法错误 : “)”
xxx\GdiPlusHeaders.h(384) : error C2864: “useEmbeddedColorManagement” : 只有常数静态整型数据成员才可以在类或结构中初始化
xxx\GdiPlusHeaders.h(384) : error C2501: “Gdiplus::Image::useEmbeddedColorManagement” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(395) : error C2061: 语法错误 : 标识符“IStream”
xxx\GdiPlusHeaders.h(405) : error C2061: 语法错误 : 标识符“IStream”
xxx\GdiPlusHeaders.h(443) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusHeaders.h(444) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusHeaders.h(445) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusHeaders.h(453) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusHeaders.h(499) : error C2143: 语法错误 : 缺少“)”(在“*”的前面)
xxx\GdiPlusHeaders.h(499) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
xxx\GdiPlusHeaders.h(499) : error C2460: “Gdiplus::Bitmap::IStream” : 使用正在定义的“Gdiplus::Bitmap”
        xxx\GdiPlusHeaders.h(488) : 参见“Gdiplus::Bitmap”的声明
xxx\GdiPlusHeaders.h(499) : error C2501: “Gdiplus::Bitmap::stream” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(499) : error C2146: 语法错误 : 缺少“;”(在标识符“useEmbeddedColorManagement”的前面)
xxx\GdiPlusHeaders.h(499) : error C2501: “Gdiplus::Bitmap::BOOL” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(499) : error C2059: 语法错误 : “)”
xxx\GdiPlusHeaders.h(499) : error C2864: “useEmbeddedColorManagement” : 只有常数静态整型数据成员才可以在类或结构中初始化
xxx\GdiPlusHeaders.h(499) : error C2501: “Gdiplus::Bitmap::useEmbeddedColorManagement” : 缺少存储类或类型说明符
xxx\GdiPlusHeaders.h(510) : error C2061: 语法错误 : 标识符“IStream”
xxx\GdiPlusFlat.h(1133) : error C2065: “IStream” : 未声明的标识符
xxx\GdiPlusFlat.h(1133) : error C2065: “stream” : 未声明的标识符
xxx\GdiPlusFlat.h(1133) : error C2065: “image” : 未声明的标识符
xxx\GdiPlusFlat.h(1133) : error C2275: “Gdiplus::GpImage” : 将此类型用作表达式非法
        xxx\GdiPlusGpStubs.h(61) : 参见“Gdiplus::GpImage”的声明
xxx\GdiPlusFlat.h(1133) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(1133) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(1139) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1139) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1139) : error C2275: “Gdiplus::GpImage” : 将此类型用作表达式非法
        xxx\GdiPlusGpStubs.h(61) : 参见“Gdiplus::GpImage”的声明
xxx\GdiPlusFlat.h(1139) : error C3861: “image”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1139) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(1139) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(1156) : error C2061: 语法错误 : 标识符“IStream”
xxx\GdiPlusFlat.h(1244) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusFlat.h(1247) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusFlat.h(1250) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusFlat.h(1262) : error C2061: 语法错误 : 标识符“PROPID”
xxx\GdiPlusFlat.h(1275) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1275) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1275) : error C2065: “bitmap” : 未声明的标识符
xxx\GdiPlusFlat.h(1275) : error C2275: “Gdiplus::GpBitmap” : 将此类型用作表达式非法
        xxx\GdiPlusGpStubs.h(62) : 参见“Gdiplus::GpBitmap”的声明
xxx\GdiPlusFlat.h(1275) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(1275) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(1281) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1281) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1281) : error C2275: “Gdiplus::GpBitmap” : 将此类型用作表达式非法
        xxx\GdiPlusGpStubs.h(62) : 参见“Gdiplus::GpBitmap”的声明
xxx\GdiPlusFlat.h(1281) : error C3861: “bitmap”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(1281) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(1281) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(2126) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2126) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2128) : error C2065: “header” : 未声明的标识符
xxx\GdiPlusFlat.h(2128) : error C2275: “Gdiplus::MetafileHeader” : 将此类型用作表达式非法
        xxx\GdiPlusMetaHeader.h(112) : 参见“Gdiplus::MetafileHeader”的声明
xxx\GdiPlusFlat.h(2128) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(2128) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(2146) : error C2061: 语法错误 : 标识符“IStream”
xxx\GdiPlusFlat.h(2166) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2166) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2166) : error C2065: “metafile” : 未声明的标识符
xxx\GdiPlusFlat.h(2166) : error C2275: “Gdiplus::GpMetafile” : 将此类型用作表达式非法
        xxx\GdiPlusGpStubs.h(63) : 参见“Gdiplus::GpMetafile”的声明
xxx\GdiPlusFlat.h(2166) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(2166) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(2212) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2212) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2213) : error C2275: “HDC” : 将此类型用作表达式非法
        xxx\WinDef.h(248) : 参见“HDC”的声明
xxx\GdiPlusFlat.h(2213) : error C2146: 语法错误 : 缺少“)”(在标识符“referenceHdc”的前面)
xxx\GdiPlusFlat.h(2213) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(2213) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(2213) : error C2275: “HDC” : 将此类型用作表达式非法
        xxx\WinDef.h(248) : 参见“HDC”的声明
xxx\GdiPlusFlat.h(2219) : error C2059: 语法错误 : “)”
xxx\GdiPlusFlat.h(2223) : error C3861: “IStream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2223) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusFlat.h(2224) : error C2275: “HDC” : 将此类型用作表达式非法
        xxx\WinDef.h(248) : 参见“HDC”的声明
xxx\GdiPlusFlat.h(2224) : error C2146: 语法错误 : 缺少“)”(在标识符“referenceHdc”的前面)
xxx\GdiPlusFlat.h(2224) : warning C4229: 使用了记时错误 : 忽略数据上的修饰符
xxx\GdiPlusFlat.h(2224) : error C2078: 初始值设定项太多
xxx\GdiPlusFlat.h(2224) : error C2275: “HDC” : 将此类型用作表达式非法
        xxx\WinDef.h(248) : 参见“HDC”的声明
xxx\GdiPlusFlat.h(2230) : error C2059: 语法错误 : “)”
xxx\GdiPlusMetaFile.h(80) : error C2143: 语法错误 : 缺少“)”(在“*”的前面)
xxx\GdiPlusMetaFile.h(80) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
xxx\GdiPlusMetaFile.h(80) : error C2460: “Gdiplus::Metafile::IStream” : 使用正在定义的“Gdiplus::Metafile”
        xxx\GdiPlusMetaFile.h(18) : 参见“Gdiplus::Metafile”的声明
xxx\GdiPlusMetaFile.h(80) : error C2059: 语法错误 : “)”
xxx\GdiPlusMetaFile.h(80) : error C2501: “Gdiplus::Metafile::stream” : 缺少存储类或类型说明符
xxx\GdiPlusMetaFile.h(82) : error C2864: “metafile” : 只有常数静态整型数据成员才可以在类或结构中初始化
xxx\GdiPlusMetaFile.h(85) : error C2327: “Gdiplus::Metafile::metafile” : 不是类型名称、静态或枚举数
xxx\GdiPlusMetaFile.h(84) : error C3861: “stream”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(85) : error C3861: “metafile”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(85) : error C2864: “lastResult” : 只有常数静态整型数据成员才可以在类或结构中初始化
xxx\GdiPlusMetaFile.h(85) : error C2501: “Gdiplus::Metafile::lastResult” : 缺少存储类或类型说明符
xxx\GdiPlusMetaFile.h(87) : error C2061: 语法错误 : 标识符“metafile”
xxx\GdiPlusMetaFile.h(87) : warning C4183: “SetNativeImage”: 缺少返回类型;假定为返回“int”的成员函数
xxx\GdiPlusMetaFile.h(100) : error C2065: “lastResult” : 未声明的标识符
xxx\GdiPlusMetaFile.h(104) : error C3861: “SetNativeImage”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(119) : error C3861: “lastResult”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(123) : error C3861: “SetNativeImage”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(124) : warning C4508: “Gdiplus::Metafile” : 函数应返回一个值;假定“void”返回类型
xxx\GdiPlusMetaFile.h(138) : error C3861: “lastResult”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(142) : error C3861: “SetNativeImage”: 即使使用参数相关的查找,也未找到标识符
xxx\GdiPlusMetaFile.h(142) : fatal error C1003: 错误计数超过 100;正在停止编译

-------------------------------------------------------------------------------------
原因是少包含了comdef.h这个文件,GDI+需要一些COM定义。

//gdi+
#include <comdef.h>
#include <gdiplus.h>
using namespace Gdiplus;
#pragma  comment(lib, "gdiplus.lib")

猜你喜欢

转载自blog.csdn.net/mpp_king/article/details/88813193