Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 读取依赖项walker输出_C#_C++_Dll_Pinvoke_Dependency Walker - Fatal编程技术网

C# 读取依赖项walker输出

C# 读取依赖项walker输出,c#,c++,dll,pinvoke,dependency-walker,C#,C++,Dll,Pinvoke,Dependency Walker,我在应用程序中使用一个DLL时遇到一些问题,我在上面运行了dependency walker。我不知道怎么读,但我得到了以下结果 这是否表明存在x86-x64不兼容?我能解决这个问题吗 Error: At least one required implicit or forwarded dependency was not found. Error: At least one module has an unresolved import due to a missing export func

我在应用程序中使用一个DLL时遇到一些问题,我在上面运行了dependency walker。我不知道怎么读,但我得到了以下结果

这是否表明存在x86-x64不兼容?我能解决这个问题吗

Error: At least one required implicit or forwarded dependency was not found.
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
Error: Modules with different CPU types were found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.

当您在64位版本的Dependency Walker中查看32位可执行文件时,通常会看到这种视图。因为Dependency Walker是64位的,所以当它尝试在DLL搜索路径上查找DLL时,会找到64位版本。您的32位程序将在WOW64模拟器中运行,并找到32位版本

所以,你展示的截图,没有什么值得关注的


如果您的应用程序存在依赖性问题,我建议您在dependency Walker的配置文件模式下运行程序(从配置文件菜单项)。这将为您提供加载时和运行时实际发生的情况的详细诊断。您在上面展示的屏幕截图来自静态分析,因此这种静态分析必然是不完整的,并且可能不准确。确保程序加载时发生什么的唯一方法是在加载时对其进行调试。

请注意:如果可能,请将错误消息作为文本(另外)包含在内,以便用户更容易找到此线程。谢谢;-)刚刚编辑的错误是相当描述性的,但我的问题是,如果有这么多的问题,他们如何编译DLL开始?TL;DR:要检查32位exe,请使用32位版本的Dependency Walker。同样,要检查64位exe,请使用64位版本的Dependency Walker.Handy工具自动启动正确的版本