在 VC6 中使用 GdiPlus-安装

Step1:下载 GdiPlus SDK 文件包

    VC6 的安装程序并没有包含 GdiPlus 相关的库文件和头文件,所以想在VC6中使用 GdiPlus,你首先得把这些文件下载到本地。微软的说法是 GdiPlus 相关的库文件和头文件已经合入到 .Net Platform SDK 里面,所以开发人员只需要下载安装 SDK 即可。但也有相当一部分开发人员是不想为了 GdiPlus 就安装 SDK 的,于是就有热心之人从 SDK 中把 GdiPlus 相关的这些文件单独抽离了出来,形成了 GdiPlus SDK 文件包。

你可以尝试通过以下链接地址进行下载:
链接地址1:http://www.codeguru.com/code/legacy/gdi/GDIPlus.zip
链接地址2:http://www.codersource.net/samples/mfcgdiplus.zip

解压之后,请核对一下文件夹中的目录结构:
Root (Directory)
│ 
├Includes (Directory)
│ ├GdiPlus.h
│ ├GdiPlusBase.h
│ ├……
│ ├……
│ └GdiPlus*.h
├Lib (Directory)
│ └GdiPlus.lib
└GdiPlus.dll 

Step2:安装


    理论上讲,把下载回来的这些文件放在硬盘上的任意一个位置都是可以的,只要在 Step3 中进行相应正确的配置,都能够在 VC6 中把 GdiPlus 用起来。

我采取的做法是:
(1)头(GdiPlus*.h)文件安装目录:C:\Program Files\Microsoft Visual Studio\VC98\GdiPlus;
    把 GDI+ SDK 文件包中的 Includes 目录重命名为 GdiPlus,再把 GdiPlus 文件夹 Copy 到 C:\Program Files\Microsoft Visual Studio\VC98 目录里面,换句话说就是把文件包中所有的 GdiPlus*.h 文件 Copy 到 C:\Program Files\Microsoft Visual Studio\VC98\GdiPlus 目录下。

(2)静态库(GdiPlus.lib)文件安装目录:C:\Program Files\Microsoft Visual Studio\VC98\Lib;
    把 GdiPlus.lib Copy 到 C:\Program Files\Microsoft Visual Studio\VC98\Lib 中。

(3)动态库(GdiPlus.dll)文件安装目录:Copy 到 exe 文件存放目录或者直接使用系统中自带的 GdiPlus.dll;
    事实上在安装 Windows 操作系统(2000以及以上版本)的时候,安装程序就已经把 GdiPlus.dll Copy 到了系统目录里面了。随着 Windows 补丁的不断更新,你也许还会在系统目录里面发现同时存在多个不同版本的 GdiPlus.dll(我尝试搜索了一下 C:\Windows 目录,发现两个不同版本的 GdiPlus.dll)。
    对于 GdiPlus.dll 不同版本的问题,微软建议软件开发厂商可以把自己开发测试时候所使用的 GdiPlus.dll 版本放到自己产品的安装目录下,随产品一起发布,这样程序在装载 GdiPlus.dll 的时候,会优先选择安装目录下的版本进行装载。
    这种做法的目的可以这样理解,假设现在 GdiPlus.dll 发现漏洞需要升级,但是用户操作系统由于没有及时打补丁或者其他原因,系统目录下的 GdiPlus.dll 未能及时更新(系统仍然在使用一个存在漏洞的 GdiPlus.dll)。此时用户安装了一个新软件,这个软件里面如果有打包 GdiPlus.dll 版本的话,那软件运行时候所使用的 GdiPlus.dll 版本与软件开发测试时候所使用的版本就是一致的,这样就可以把软件运行时候受漏洞影响的可能性降到最低。
    文件包中的 GdiPlus.dll 文件版本是 5.0.3049.0,微软最近更新的一个 GdiPlus.dll 版本是 5.1.3102.2180。我的 Windows XP 系统一直都有进行比较及时的自动更新,通过 Windows 的搜索功能可以在 C:\Windows 目录里面找到 GdiPlus.dll 的最新版本。另外我在腾讯 QQ 的安装目录下也发现了 GdiPlus.dll 的最新版本。 

Step3:配置开发环境下的路径


为了让 VC6 在编译的时候,能够找到 GDI+ 相关的库文件和头文件,还需要在 VC6 开发环境中进行目录配置。
(1)从 VC6 主菜单 Tools->Options... 进入设置窗口,选择 Directories 选项卡;
(2)在 Show directories for: 下拉列表中选择 Include files,在列表中增加 GdiPlus 头文件所存放的目录路径,这个路径应该与 Step2 里面(1)的路径一致;
(3)在 Show directories for: 下拉列表中选择 Library files,在列表中增加 GdiPlus.lib 所存放的目录路径,这个路径应该与 Step2 里面(2)的存放路径一致;
(4)重启 VC6,以保存修改后的配置。

VC++6.0使用GDI++出现'ULONG_PTR'未定义和'token' 未定义的解决办法

问题原因:GDI++是WIndows Platform SDK不是MFC的一部分,而ULONG_PTR在SDK中的定义与MFC中的定义相冲突,所以,会出现此问题。

解决办法:添加#define ULONG_PTR ULONG ,具体如下:

#pragma comment(lib, "gdi//gdiplus.lib")
    #define ULONG_PTR ULONG
    #include "gdi/GdiPlus.h"
   using namespace Gdiplus;






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值