zoukankan      html  css  js  c++  java
  • 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题

       今天升级 vC++ 2005 到了 sp1 ,突然发现自己写的程序 无法在同事的机器上运行了。在博客园找了很多的资料,比如
    大智若愚的: http://www.cnblogs.com/riky/archive/2007/05/11/743310.html
    可是对于我,依然无效。
        情况是这样的,以前的程序版本都是 用 vc 6.0 写的,我只是修改了其中的一个dll,这个dll  用 vC++ 2005 写
    没有问题, 但是用 vC++ 2005 sp1 写的,就有问题,。
        解决方案很简单:
       1. 如果你只是开发纯 C++ 的应用程序,根本没有必要升级到 vC++ 2005 sp1 C 运行时库。加一个预定宏 _USE_RTM_VERSION。

       2. 如果你是像我这样的,只是升级一下以前编译器写的组件,没有必要升级到 vC++ 2005 sp1 C 运行时库,而且升级的方法我依然不知道,上面的链接提供的方法都不行。
          最简单的解决方法,加一个预定宏 _USE_RTM_VERSION。

       3. 如果你是新开发应用程序比如 MFC 的应用程序,建议使用  vC++ 2005 sp1 C 运行时库,毕竟这个库的效率比以前的版本要高一些,而且修复了很多的漏洞和问题。

        注意大致若愚提供的方法中,有好几个是 使用静态链接实现,这个方法最好不可以用。msdn 上是这样说的:“通常错误地认为,将程序静态地链接到 Visual C++ 库可以显著改善应用程序的性能。但是,在几乎所有的情况下,动态加载 Visual C++ 库对性能造成的影响并不显著。而且,静态链接不允许应用程序的作者或 Microsoft 为应用程序及其依赖库提供服务。例如,假定静态连接到特定库的应用程序在具有此库的新版本的客户端计算机上运行。应用程序仍可以从该库的以前版本使用代码,但不会受益于库增强功能(如安全增强功能)。强烈建议 C/C++ 应用程序的作者在决定静态链接到依赖库之前认真考虑维护方案,并尽可能使用动态链接。”;

  • 相关阅读:
    csrf跨站请求伪造
    IO 之 InputStream 和 Reader
    javadoc tags
    java this
    递归
    java 文件中 定义一个字符串,它的默认编码是什么?
    合并数组
    << 移位运算
    final static T
    Base64.java 工具类
  • 原文地址:https://www.cnblogs.com/niniwzw/p/1563332.html
Copyright © 2011-2022 走看看