利用Visual Studio 2005开发的程序缺少DLL无法运行的解决方法之一

Visual Studio 2005环境下,利用MFC编制的程序在没有装有Visual Studio 2005的平台上运行,会出现“由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题”的错误。

原因在于,MFC选项中设置的是“在共享DLL中使用MFC”,致使程序在没有装VS 2005的平台上会因为缺乏必要的DLL而无法启动。

我的解决方法是拷贝必需的DLLMFC程序目录下。


第一步,在编译MFC程序时,产生的中间文件中会有“xxx.exe.intermediate.manifest”,打开该文件,会发现里面内如大致如下:

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>

<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>

  <dependency>

    <dependentAssembly>

      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />

    </dependentAssembly>

  </dependency>

  <dependency>

    <dependentAssembly>

      <assemblyIdentity type='win32' name='Microsoft.VC80.MFC' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />

    </dependentAssembly>

  </dependency>

</assembly>


文件中有Microsoft.VC80.CRT,假设VS 2005安装在D盘中的VS2005目录,那么Microsoft.VC80.CRT则位于D:/VS2005/VC/redist/x86中,拷贝Microsoft.VC80.CRT中的所有文件到编制的MFC程序目录下,对于Microsoft.VC80.MFC也是同理,此外,务必也要把xxx.exe.intermediate.manifest拷贝到编制的MFC程序目录下。

如果编制的程序中同时有exe文件和dll文件,那么exe文件和dll文件都要按上述步骤进行,dllxxx.dll.intermediate.manifest文件也要拷贝。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值