• 应用程序初始化正常(0xc015002)失败解决方法


    VS2005 sidebyside manifest error Microsoft.VC80.MFC Microsoft.VC80.CRT Microsoft.VC80.MFCLOC msvcr80.dll mfc80.dll eventlog VC2005 编译的程序文件。採用了manifest方式来指定dll文件。对于win98、win2000系统,把exe文件和VC的 dll连接库放到一起就 成了。对于winxp、win2003系统就要麻烦的多了,VC的连接库默认是被放到了winsxs文件夹下,结果造成在这些系统上。直接拷贝exe文件。 往往是不能执行(找不到msvcr80.dll、mfc80.dll文件等)。或者在事件日志中报错。 解决方案: 方式一、在目标系统上安装2005版vcredist_x86.exe。

    方式二、直接拷贝VS8文件夹下的VC / redist / x86 / 文件夹下的 Microsoft.VC80.MFC、Microsoft.VC80.CRT、Microsoft.VC80.MFCLOC几个文件夹。到exe所在的文件夹下。文件夹结构例如以下: ./myapp.exe ./myapp.dll ./Microsoft.VC80.CRT/ ./Microsoft.VC80.MFC/ ./Microsoft.VC80.MFC/Microsoft.VC80.MFCLOC/ 然后改动Microsoft.VC80.MFCLOC文件夹下的Microsoft.VC80.MFCLOC.manifest文件。将当中的version=“8.0.50727.42“,改动为version=“8.0.50608.0“。 方式二的文件夹结构。在xp和2003下是没有问题的。可是在win98/win2000中,由于exe和dll不在同一文件夹下,就会出现找不到dll的问题。

    有什么更好的解决呢?呵呵,国外的一个大牛(http://blog.kalmbachnet.de)找到一绝招: 方式三、 1、首先编译myapp.exe的时候。在配置中,选择生成单独的manifest文件,如:myapp.exe.manifest。

    2、将myapp.exe、myapp.exe.manifest复制到一个文件夹下 3、将Microsoft.VC80.MFC、Microsoft.VC80.CRT、Microsoft.VC80.MFCLOC几个文件夹下的文件,都复制到myapp.exe所在的文件夹下。

    4、将Microsoft.VC80.MFCLOC.manifest在文件version=“8.0.50727.42“,更改version=“8.0.50608.0“。 5、编辑myapp.exe所有文件夹 .manifest文件,在该文件publicKey键删除。平时publicKeyToken=“1fc8b3b9a1e18e3b“ 6、然后执行myapp.exe看。

  • 相关阅读:
    c#redis使用
    不安全的HTTP方法(渗透实验)
    arguments.callee弃用与webuploader
    多线程系列1:经典卖票
    终于确定了系统lsass.exe占用cpu的根本原因了,速度来看一看!![转载]
    edit响应键盘的“咚咚”声音去掉
    delphi资源文件制作及使用详解
    MySQL server has gone away错误的解决办法
    MySQL server has gone away的解决方法
    MySQL
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4581411.html
Copyright © 2020-2023  润新知