确定要重新分发的 DLL
若要确定必须与应用程序一起重新发布的 DLL,请收集应用程序所依赖的 DLL 列表。 收集该列表的一种方法是运行理解 Visual C++ 应用程序的依赖项中介绍的依赖项查看器 (depends.exe)。
当具有依赖项列表时,将其与 Redist.txt 中的列表进行比较,Redist.txt 默认情况下位于 \Program Files\Microsoft Visual Studio 2010\ 目录中(或 VSINSTALLDIR 环境变量指定的用户定义目录)。 无法重新发布 Visual Studio 中包含的所有文件;只允许重新发布 Redist.txt 中指定的文件。 调试版本的应用程序和各种 Visual C++ DLL 是不可再发行的。 有关更多信息,请参见选择部署方法。
下表描述了应用程序可能依赖的 Visual C++ DLL。 若要确定某个 DLL 是否可再发行,请查看 Redist.txt。
Visual C++ 库 |
描述 |
适用对象 |
---|---|---|
atl100.dll |
活动模板库 (ATL)。 |
使用 ATL 的应用程序。 |
msvcr100.dll |
面向本机代码的 C 运行库 (CRT)。 |
使用 CRT库功能的应用程序。 |
msvcp100.dll |
面向本机代码的标准 C++ 库。 |
使用标准 C++ 库的应用程序。 |
mfc100.dll |
Microsoft 基础类 (MFC) 库。 |
使用 MFC 库的应用程序。 |
mfc100u.dll |
具有 Unicode 支持的 MFC 库。 |
使用 MFC 库并需要 Unicode 支持的应用程序。 |
mfcmifc80.dll |
MFC 托管接口库。 |
使用具有 Windows 窗体控件的 MFC 库的应用程序。 |
mfcm100.dll |
MFC 托管库。 |
使用具有 Windows 窗体控件的 MFC 库的应用程序。 |
mfcm100u.dll |
具有 Unicode 支持的 MFC 托管库。 |
使用具有 Windows 窗体控件的 MFC 库并需要 Unicode 支持的应用程序。 |
有关如何随应用程序一起重新发布这些 DLL 的更多信息,请参见重新分发 Visual C++ 文件。 有关示例,请参见部署示例。
通常,您不必重新发布系统 DLL(例如 Kernel32.dll、User32.dll、Ole32.dll 或 ShDocVW.dll),因为这些 DLL 是操作系统的一部分,并存在于任何安装相同版本的操作系统的计算机上。 但可能存在例外,例如,当应用程序将在几个版本的 Microsoft 操作系统上运行时。 在这种情况下,请务必阅读相应的许可条款。 此外,请尝试通过 Microsoft 提供的 Service Pack 或小的可再发行组件包,将系统 DLL 升级。 您可通过在 Microsoft 支持网站上搜索来查找可用组件包。