加载托管C++程序集出现0x800736B1异常的解决方法

在新的环境加载托管C++程序集的时候经常出现加载dll失败,出现以下提示:

       System.IO.FileLoadException: 未能加载文件或程序集“testDll, Version=1.0.3247.21554, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。 (异常来自 HRESULT:0x800736B1)。

       使用regsvr32注册该dll也是加载失败。

       具体原因是dll是用visual studio sp1编译生成,在新的环境不能直接支持,需要安装Microsoft Visual C++ 2008 SP1 Redistributable Package (x86) 会为 Visual C++ 库安装必要的运行时组件,使用户能够在未安装 Visual C++ 2008 SP1 的计算机上运行使用 Visual C++ SP1 开发的应用程序。

       注意:安装好Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)后,如果dll是使用Debug方式编译生成的也是加载失败,部署时需要用Release的方式编译。

 

此文章摘抄 https://www.cnblogs.com/zhaozhan/archive/2011/06/08/2075687.html 

转载于:https://www.cnblogs.com/pengyu360/p/9320477.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值