我在运行针对 x64 并使用 64 位 dll(第 3 方)的 C# 应用程序(WPF、.Net 4.0、Visual Studio 2010)时遇到问题。
当我使用 64 位 dll(在 64 位 Win7/WindowsServer2003 上)运行 64 位版本时出现问题。应用程序启动正常。但是当我点击应用程序上的开始按钮时,应用程序创建线程并开始与 dll 交互,线程将在第一次调用 dll 函数时崩溃/停止。以下是我关闭应用程序时生成的错误。
问题签名:
问题事件名称:APPRCASH
应用程序名称:DelayServer.exe
应用程序版本:1.0.0.0
申请时间戳:52092104
故障模块名称:KERNELBASE.dll
故障模块版本:6.1.7601.17965
故障模块时间戳:506dcae6
异常代码:e0434352
异常偏移量:000000000000bccd
操作系统版本:6.1.7601.2.1.0.272.7
区域设置 ID:2057
附加信息 1:7315
附加信息 2:
73159f4fb34892aabcc4ba245f14f64e附加信息 3:d5ec
附加信息 4:
d5ec134b8e354c23783e48c0e2e572da
我知道,如果 EXE 和 DLL 之间不匹配,即 EXE 是 32 位而 DLL 是 64 位,反之亦然,这是可能的。附上我的设置截图。我没有找到验证/编辑我的 x64 平台设置的方法。
我的开发计算机是 Win Vista 32 位,我安装了 64 位编译器。
我有使用 32 位 dll 的 32 位目标应用程序,在 32 位计算机上工作正常。 当我在 64 位计算机上使用 64 位 dll 运行 64 位目标应用程序时发生崩溃
我尝试了dependencywalker,但我无法进一步解释以找到任何依赖项。
有人可以帮我解决这个问题。
非常感谢山姆