理解 Visual C++ 应用程序的依赖项
来源:互联网 发布:淘宝信用卡申请条件 编辑:程序博客网 时间:2024/05/07 18:53
确定您的应用程序依赖哪些 Visual C++ 库的一种方式是:查看您项目的“项目设置”对话框中的“常规”选项卡。例如,您可能看到项目使用的是 MFC 和 ATL 库。如果选择了“在动态库中使用 MFC”,则您的应用程序在运行时将依赖 MFC DLL(如 mfc80.dll)。如果您的应用程序不使用 MFC 或 ATL,它可能仍依赖 CRT 库(如果已在“项目属性”的 C/C++ 分支中的“代码生成”选项卡上为“运行时库”选择了“多线程调试 DLL (/MDd)”)。
确定您的应用程序依赖哪些 DLL 的最全面的方式是:使用随 Visual C++ 提供的依赖项查看器 (Depends.exe) 打开该应用程序。Depends.exe 安装到 \Microsoft Visual Studio 2005\Common7\Tools\bin 中。请注意,只有当您选择 Win32 Platform SDK 工具(它位于 Visual C++ 自定义安装的“Visual C++ 工具”类别中)时,才会安装 depends.exe。
通过使用 depends.exe 或具有 /DEPENDENTS 选项的 DUMPBIN 实用工具,可以查看静态链接到您的应用程序的 DLL 的列表,以及应用程序的延迟加载的 DLL 的列表。
若要查看哪些 DLL(如 ActiveX 控件)是动态加载的,请使用 depends.exe 的分析功能。然后,测试该应用程序,直到您确信所有代码路径都已用过。在结束分析会话时,Depends.exe 将显示哪些 DLL 是动态加载的。
在使用 Depends.exe 时,要注意,DLL 可能有关于另一个 DLL 或特定 DLL 版本的依赖项。可以在开发计算机上或目标计算机上使用 Depends.exe。在开发计算机上,Depends.exe 将报告支持应用程序所需要的 DLL。如果在让应用程序在目标计算机上运行时遇到问题,可以将 Depends.exe 复制到目标计算机上,并在 Depends.exe 中打开该应用程序。Depends.exe 将报告缺少哪些应用程序的 DLL,或者虽然存在,但版本不正确的 DLL。
在您有了应用程序所依赖的 DLL 的完整列表后,就可以决定其中哪些 DLL 在部署到其他计算机时必须与您的应用程序一起重新发布。在多数情况下,没必要重新发布系统 DLL,但是必须重新发布 Visual C++ 库的 DLL。有关更多信息,请参见确定要重新发布的 DLL。
- 理解 Visual C++ 应用程序的依赖项
- 理解 Visual C++ 应用程序的依赖项
- 理解Visual C++.NET定制MFC应用程序(一)
- 理解Visual C++.NET定制MFC应用程序(二)
- 理解Visual C++.NET定制MFC应用程序(三)
- 理解Visual C++.NET定制MFC应用程序(四)
- 理解Visual C++.NET定制MFC应用程序(五)
- 理解Visual C++.NET定制MFC应用程序(六)
- 理解Visual C++.NET定制MFC应用程序(七)
- 用Visual C#开发WinForm的应用程序
- 用Visual C#开发WinForm的应用程序
- 用Visual C#开发WinForm的应用程序
- Visual C 中调用其他应用程序的方法(函数)
- Visual Studio的工程依赖
- 依赖注入的理解
- 依赖属性的理解
- 转贴-Visual C++.NET定制MFC应用程序
- 依赖和关联的理解!
- generative learning algorithm
- cordova 自定义插件
- bzoj 1798 [Ahoi2009]Seq 维护序列seq
- eclipse快捷键大全
- cdoj1092
- 理解 Visual C++ 应用程序的依赖项
- IO/打印流
- 约瑟夫环的链表解法和数学解法
- hdu-1078-FatMouse and Cheese-记忆化搜索
- 数据分析——确定分析思路
- Java实现矩阵
- 网络爬虫(三):异常的处理和HTTP状态码的分类
- Storm C++
- 快速排序、插入排序、希尔排序