VC++6.0 GDI使用问题?

来源:百度知道 编辑:UC知道 时间:2024/05/16 05:31:29
我把DLL,LIB和.h文件都加进去了,我什么都还没写呢,错就出了 :
G:\VC98\INCLUDE\GdiplusInit.h(39) : error C2065: 'ULONG_PTR' : undeclared identifier
G:\VC98\INCLUDE\GdiplusInit.h(39) : error C2065: 'token' : undeclared identifier
..............
..............
DLL,LIB和.h文件都加的位置都是对的?
如何解决?

你使用了 GDI+ .由于vc6本身不带gdi+的各个库函数
所以你要自己添加一些变量.你这个问题是初学者经常碰到的
下面是解决方法,给 'ULONG_PTR'和 'token' 分别加上定义就行了

#pragma comment(lib, "gdiplus.lib") //注意,要保证vc路径的lib中,能够找到这个文件
#define ULONG_PTR ULONG
#include <gdiplus.h>
using namespace Gdiplus;

然后增加app类中的变量:
GdiplusStartupInput m_gdiplusStartupInput;
ULONG_PTR m_pGdiToken;
在InitInstance函数中,增加代码
GdiplusStartup(&m_pGdiToken,&m_gdiplusStartupInput,NULL);
增加ExitInstance函数中,增加以下代码
GdiplusShutdown(m_pGdiToken);
此时编译应该能够通过,执行前,检查一下GDIPLUS.DLL是否在系统目录或当前目录

以后的工作就是你的了! :)

一种可能是还有其它相关头文件没有包括。
另一种可能是,由于VC6太老了,是不是当时还不支持gdi+库,你增加了相关功能扩展,但编译器支持标准不够,不能正确解析出源文件。