让 GDI+ 运行的技巧
如何避免编译器错误和 DLL 相关问题。
引言
首先,非常感谢所有为这个优秀的社区做出贡献的人。当然,也特别感谢 CodeProject 背后的所有人员。
在使用 GDI+ 的最初阶段,我遇到了一些问题。在尝试寻求建议时,我意识到我并不是唯一一个遇到这些编译器错误和 DLL 相关问题的人。
所以,以下是我让它运行起来的方法。
需要做的事情
我下载了包含 GDI+ 的 Microsoft SDK(2001年11月版本)。由于它是一个相当大的软件包,我将必要的文件发布在这篇文章中,但请不要责怪我,我从未以这种方式尝试过。我只是安装了 SDK,并将 GDI+ 文件从相应的文件夹中取出。
感谢 Christian Graus,请参阅他的文章“Starting with GDI+”以获取有关代码中初始化的信息。
为了避免编译器错误,请确保 #include <gdiplus.h>
在 stdafx.h 中声明,位于标准包含文件之后,例如 #include <afxwin.h>
、#include <afxext.h>
、#include <afxdisp.h>
、#include <afxdtctl.h>
等,以便在解析 gdiplus.h 时所有声明都存在。
如果 GDI+ 包含文件和 .lib 不在 VC++ 的相应文件夹中,请通过“工具/选项”和“文件夹”选项卡设置到这些文件夹的路径。
DLL 文件
GdiPlus.dll 仅随 WinXP 提供。
所有其他 Windows 操作系统都需要上面 zip 文件中提供的那个。不要将其复制到 System 文件夹,而是将其放在应用程序的私有文件夹中,该文件夹也包含 EXE 文件。例如,在开发期间项目的 Release 或 Debug 文件夹。
当然,你还必须在 project/settings/linker 下命名 GdiPlus.lib 包含库。
就这样了,现在应该可以正常工作了。