CNTK EvalWrapper 程序集加载失败
Assembly loading fails with CNTK EvalWrapper
我有一个 .NET 程序集,其中包含一些引用 CNTK EvalWrapper.dll
的测试。 CNTK 构建针对 x64,.NET 测试程序集具有构建目标 AnyCPU。我已确保构建输出目录 中提供了所有必需的 DLL。我在 VS 测试设置/处理器架构中选择了 x64。
我的测试 运行 有一段时间没问题,但现在开始因程序集加载错误而失败,加载时 BadImageFormatException
EvalWrapper.dll
。使用 Fusion Log Viewer 检查加载错误也没有发现除了格式不正确之外的任何内容:
The operation failed.
Bind result: hr = 0x8007000b. An attempt was made to load a program with an incorrect format.
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO 14.0\COMMON7\IDE\COMMONEXTENSIONS\MICROSOFT\TESTWINDOW\te.processhost.managed.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: DisplayName = EvalWrapper, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
我的项目设置中没有任何更改。是什么悄无声息地改变了,导致我的测试现在都失败了?
我猜罪魁祸首是一个 32 位测试执行引擎,它仍然 运行 在后台 - 尽管我已经确定 "Test Settings / Keep Test Execution Engine Running" 没有被勾选。昨天我有一刻注意到 VS 有 "forgotten" 我选择的处理器架构,它被重置为 32 位。我将其改回 64 位 - 事后看来,我想这就是问题开始的地方。
我之前在其他项目中也注意到 VS 默默地更改处理器架构以进行测试。
关闭并重新打开 VS 成功了,所有测试现在再次通过。或者,我可能已经查找了所有 运行 的测试执行引擎进程,然后杀死它们。
我有一个 .NET 程序集,其中包含一些引用 CNTK EvalWrapper.dll
的测试。 CNTK 构建针对 x64,.NET 测试程序集具有构建目标 AnyCPU。我已确保构建输出目录
我的测试 运行 有一段时间没问题,但现在开始因程序集加载错误而失败,加载时 BadImageFormatException
EvalWrapper.dll
。使用 Fusion Log Viewer 检查加载错误也没有发现除了格式不正确之外的任何内容:
The operation failed.
Bind result: hr = 0x8007000b. An attempt was made to load a program with an incorrect format.
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO 14.0\COMMON7\IDE\COMMONEXTENSIONS\MICROSOFT\TESTWINDOW\te.processhost.managed.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: DisplayName = EvalWrapper, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
我的项目设置中没有任何更改。是什么悄无声息地改变了,导致我的测试现在都失败了?
我猜罪魁祸首是一个 32 位测试执行引擎,它仍然 运行 在后台 - 尽管我已经确定 "Test Settings / Keep Test Execution Engine Running" 没有被勾选。昨天我有一刻注意到 VS 有 "forgotten" 我选择的处理器架构,它被重置为 32 位。我将其改回 64 位 - 事后看来,我想这就是问题开始的地方。
我之前在其他项目中也注意到 VS 默默地更改处理器架构以进行测试。
关闭并重新打开 VS 成功了,所有测试现在再次通过。或者,我可能已经查找了所有 运行 的测试执行引擎进程,然后杀死它们。