C#System.DllNotFoundException

C#System.DllNotFoundException,c#,dllnotfoundexception,C#,Dllnotfoundexception,我有一个使用cryptlex(cryptlex.com)提供的产品激活系统的简单应用程序 该程序在我的计算机上正常运行,但当我尝试在另一台计算机上运行该程序时,它返回以下错误: 我已经确定dll在可执行文件夹中,并且一切正常 当我删除cryptlex的所有部分时,该程序在任何机器(x86-x64)上都能完美运行 我使用depencywalker检查错误,并在使用cryptlex的可执行文件中发现了以下两个错误: Windows 7 64位, .NET版本:4.0当DLL存在时,是否检查了比特

我有一个使用cryptlex(cryptlex.com)提供的产品激活系统的简单应用程序

该程序在我的计算机上正常运行,但当我尝试在另一台计算机上运行该程序时,它返回以下错误:

我已经确定dll在可执行文件夹中,并且一切正常

当我删除cryptlex的所有部分时,该程序在任何机器(x86-x64)上都能完美运行

我使用depencywalker检查错误,并在使用cryptlex的可执行文件中发现了以下两个错误:

Windows 7 64位,
.NET版本:4.0

当DLL存在时,是否检查了比特率?
大多数C#项目默认根据
任何CPU构建
——如果DLL特定于比特率(即x86或x64),那么可能是程序在终端机器(通常是x86)上选择了错误的比特率,但在您的机器(x64)上选择了正确的比特率。这通常最好通过构建不同的x86和x64版本来解决;它比较混乱,但只有.NET本身擅长使用
任何CPU
范式。

异常应该有关于未找到特定DLL的详细信息-可能更仔细看看

GPSVC和IESHIMS缺失不应成为问题;如计时器所示,它们无论如何都是延迟依赖项。

您可以使用它来记录程序的所有文件活动。为可执行文件设置筛选器。复制错误后,将日志另存为XML文件

然后跑(注:我是它的作者)。它将分析该文件并给出未找到的DLL的列表


您也可以手动执行此操作,但请注意,最初可能找不到某些DLL,但稍后在查看
%PATH%
环境变量等时会发现。该工具将首先删除所有
路径未找到的条目,但随后会删除
成功的条目。

显然您没有复制本地cryptlex依赖项dll。您复制了cryptlex dll,但没有复制cryptlex的依赖项dll,你帮了我很多。修正了这个问题。。。你是最棒的