您的位置:首页 > 其它

Gdi+ 编译不过的问题

2016-02-18 10:19 246 查看
1. 若是DLL项目,则需要修改Stdafx.h,将如下语句注释掉

   #define WIN32_LEAN_AND_MEAN             // 从 Windows 头中排除极少使用的资料

2. 添加gdi+的头文件,如下:

   #include <gdiplus.h>

   #pragma comment(lib, "gdiplus.lib")

   using namespace Gdiplus;

3. 使用Gdi+前后,需要打开Gdi+和关闭Gdi+;可以用如下类自动实现

3.1 头文件

#pragma once

#ifdef XSWCOMMON_EXPORTS

#define XSWCOMMON_API __declspec(dllexport)

#else

#define XSWCOMMON_API __declspec(dllimport)

#pragma comment( lib, "XswCommon" )

#endif

#include <gdiplus.h>

#pragma comment(lib, "gdiplus.lib")

using namespace Gdiplus;

class XSWCOMMON_API CAutoLoadReleaseGdiplus

{

public:

CAutoLoadReleaseGdiplus(void);

~CAutoLoadReleaseGdiplus(void);

private:

ULONG_PTR m_gdiplusToken;

};

3.2 实现文件

#include "StdAfx.h"

#include "AutoLoadReleaseGdiplus.h"

CAutoLoadReleaseGdiplus::CAutoLoadReleaseGdiplus(void)

{

GdiplusStartupInput gdiplusStartupInput;

GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);

}

CAutoLoadReleaseGdiplus::~CAutoLoadReleaseGdiplus(void)

{

GdiplusShutdown(m_gdiplusToken);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: