C DLL没有在C#中加载

我有一个简单的C DLL(不是COM)。 我还有一个运行它的C#2.0应用程序(dllimport)。 dll放在应用程序的exe中。 我知道dll是可以的,而且我的应用程序称它成功读取它,但是当我将它们移动到另一台计算机时它说它可以加载dll。

错误:“无法加载dll name.dll。此应用程序无法启动,因为应用程序配置不正确。”

我使用visual studio 2005来创建dll。 目标计算机是一个并排的计算机。 当我拿着并排的文件夹包含它没有运行的CRT。 谢谢

C Dll可以具有各种依赖性。 尝试使用Dependency Walker工具确定是否有任何一个。

Windows可能已检测到您的应用程序的并行版本配置问题。

例如,C dll通常将针对特定版本的Microsoft C运行时库进行编译,该库可能未安装在您的第二台计算机上。 它也不必是C运行时库,它可能是其他一些库。

如何诊断?

查看这篇文章, http://blogs.msdn.com/junfeng/archive/2006/04/14/576314.aspx作为起点,尽管没有保证。

我从人们写的评论中使用了很多,他们是对的。 我使用:Dependency Walker工具和进程监视器和进程资源管理器。 我有一个问题,就是我的应用程序在运行时没有检测到正确的msvr80。 我在VC ++ amd没有帮助的情况下安装了可分发的软件包。 answear在这里进行了另一次讨论并且它并排配置错误(Microsoft.VC80.CRT v8.0.50608.0)这是安全更新的问题:Microsoft.VC80.CRT v8.0.50727.4053(通过安装安全更新)。