none
vs2008 编写的dll在没有安装vs2008的机制上运行异常 RRS feed

  • 问题

  • 我用vs2008编写了一个dll文件,这个dll文件会调用第三方DLL,这些第三方DLL在链编的时候应该是用MDd去链编的,而卧写的DLL用的是MTd去链编,把这些dll需要的库文件(dll与manifest文件)复制到程序目录下。结果在安装了vs2008的机子上运行正常,而在没有安装vs2008的机子上程序可以启动但在运行过程中会抛出断言出错的异常,如下图:

     

    此外由于项目进程使用C写的,需要调用我用C++写的这个dll文件。这是什么原因?求解答谢谢~

    2011年8月11日 5:44

答案

  • 你好,

     

    可能是由于您未能正确提供图片链接,因此我们无法浏览您所提供的图片。

     

    此外,您所提到你调用的DLL是可以运行在安装有VS2008 的机子上运行,而不能在未安装VS2008的机子上运行。因此您所调用的DLL可能依赖与VC++2008runtime或者是.NET 3.0framework 而断言失败,也可能是由于,您调用的DLL在启动时,对注册表进行搜索,以判断是否安装有运行环境。我建议您可以分别安装上这两个类库进行测试。

     

    希望我的建议能够帮助您解决您的问题。


    Rob Pan [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 Rob Pan 2011年8月17日 9:32
    2011年8月12日 6:18