MFC的静态库.lib、动态库.dll(包含引入库.lib)以及Unicode库示例

以vs2012为标准。转自:http://technet.microsoft.com/zh-cn/library/w4zd66ye ,有改动。


一 MFC的静态库(.lib)

MFC静态库使用下列命名约定:

uAFXcWd.LIB .

库命名约定的说明符如下:

说明符 值和含义
u (n) ANSI 或 (u)Unicode
c 创建的计划类型:c=all
d d=debug版本; release版本略去说明符

默认值为生成用于 Intel 平台的调试版本 windows ANSI 应用程序的静态库:NAFXCWD.Lib.

下表列出的所有库是在 \ atlmfc \ lib 目录中包含预生成的静态库。

静态链接库命名约定:

说明
NAFXCW.LIB MFC 静态链接库,发布版本
NAFXCWD.LIB MFC 静态链接库,调试版本
UAFXCW.LIB MFC 具有 Unicode 的静态链接库支持,发布版本
UAFXCWD.LIB MFC 具有 Unicode 的静态链接库支持,调试版本

 

二 MFC的动态库(含引入库.lib)

MFC 中包含的 DLL 和库遵循结构化命名约定。这使了解应为什么目的使用哪个 DLL 或库变得更容易。

生成使用这些 DLL 的应用程序或扩展 DLL 所需的导入库与 DLL 具有相同的基本名称,但带有 .lib 文件扩展名。

共享 DLL 命名约定:

DLL(导入库.lib) 说明
MFCxx.DLL (MFCxx.lib/MFCSxx.lib) MFC DLL,ANSI 发布版本
MFCxxU.DLL (MFCxxU.lib/MFCSxxU.lib) MFC DLL,Unicode 发布版本
MFCxxD.DLL (MFCxxD.lib/MFCSxxD.lib) MFC DLL,ANSI 调试版本
MFCxxUD.DLL (MFCxxUD.lib/MFCSxxUD.lib) MFC DLL,Unicode 调试版本

 

三 MFC所有Unicode库示例

MFC 库的 Unicode 版本如下述:

静态链接库:

发布(Release) 调试(Debug) 说明
UAFXCW.lib, .pdb UAFXCWD.lib, .pdb Unicode MFC 静态链接库

 

动态链接库:

发布(Release) 调试(Debug) 说明
MFC100U.lib, .dbg, def, .dll, .map, .pdb, .prf MFC100UD.lib, .def, .dll, .map, .pdb Unicode MFC 包含应用程序或 DLL 必须静态链接的代码的导入库
MFCS100U.lib, .pdb MFCS100UD.lib, .pdb Unicode MFC 包含应用程序或 DLL 必须静态链接的代码的导入库

 

文件类型:

  • 导入库文件具有扩展名 (.lib)。

  • 动态链接库文件具有扩展名 (.dll)。

  • 模块定义 (.def) 文件是包含定义的 .exe 或 .dll 语句的文本文件。

  • 映射 (.map) 文件是包含信息链接器使用,在链接程序中的文本文件。

  • 导入库 (.lib) 文件与 MFC 的 DLL 版本一起使用。 这些文件包含应用程序或 DLL 必须静态链接的代码。

  • 程序数据库 (.pdb) 文件中调试和项目状态信息。

  • 调试 (.dbg) 文件包含 Visual C++ 调试器使用的信息 (COFF FPO 和 CodeView)。

posted on 2013-02-20 21:59  qinfengxiaoyue  阅读(6073)  评论(0编辑  收藏  举报