确定要重新分发的 DLL

更新:2010 年 7 月

若要确定必须与应用程序一起重新发布的 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)。

使用 C Run-Time Libraries的应用程序。

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 支持网站上搜索来查找可用组件包。

请参见

概念

选择部署方法

其他资源

部署 (Visual C++)

修订记录

日期

修订记录

原因

2010 年 7 月

删除了有关 msvcm100.dll 的信息,因为 msvcm100.dll 未发布。 修订了 mfcmifc80.dll 的名称,因为其名称不变,并且与版本不对应。 添加了指定安装目录的环境变量。

信息补充。