zoukankan      html  css  js  c++  java
  • 理解 Visual C++ 应用程序的依赖项(msdn)

    http://msdn.microsoft.com/zh-cn/library/ms235265(VS.80).aspx (msdn)

    确定您的应用程序依赖哪些 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

  • 相关阅读:
    Spring总结九:事务管理机制
    Spring总结七:AOP动态代理的实现
    Spring总结六:AOP(面向切面编程)
    Nginx静态网站的部署
    Spring总结五:小结 使用spring访问servlet
    javascript 的dateObj.getTime() 在为C#的获取方式
    操作JavaScript数组
    判断是否是对象的原型
    JavaScript判断对象 是什么类型的.
    Javascript中类型: undefined, number ,string ,object ,boolean
  • 原文地址:https://www.cnblogs.com/tkppain/p/3123351.html
Copyright © 2011-2022 走看看