nunit 在 64 位中调试,应用程序在 32 位中

发布于 2024-09-19 08:05:05 字数 172 浏览 3 评论 0原文

我是那些喜欢在 VS 中编辑并继续的人之一。因此,我开发 32 位应用程序。但是,当我在调试模式下运行单元测试并尝试编辑一行时,我得到通常的“不允许更改 64 位应用程序”。信息。我的所有组件都标记为 x86,nunit 作为 32 位应用程序安装。我的系统是64位的。
如何强制 nunit 作为 32 位应用程序运行?

I'm one of those people who love the Edit and Continue in VS. Because of that I develop apps in 32-bit. But when I run a unit test in debug mode and I try to edit a line, I get the usual "Changes to 64-bit applications are not allowed." message. All my components are marked x86, nunit is installed as a 32-bit application. My system is 64-bit.
How can I force nunit to run as a 32-bit application?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

只想待在家 2024-09-26 08:05:05

对于 Resharper 5,您只需将正在测试的程序集的平台目标设置为 x86(在该项目的 IDE 属性中)。新的 Resharper 5 测试运行程序显然检测到了这一点,并以 32 位运行测试。无需弄乱corflags。

For Resharper 5, you can just set the Platform Target, of the assembly you are testing, to x86 (in the IDE's Properties for that project). The new Resharper 5 test runner apparently detects that and runs the tests as 32 bit. No need to mess with corflags.

稀香 2024-09-26 08:05:05

好吧,我想通了。它确实是作为 64 位运行的 ReSharper TaskRunner,更准确地说是 JetBrains.ReSharper.TaskRunner.CLR4.MSIL.exe。我首先创建了该文件的副本,使其可写,然后强制将其 32 位标志设置为高:

>corflags JetBrains.ReSharper.TaskRunner.clr4.msil.exe /32bit+ /force

/force 因为它已签名。

还有其他几个 TaskRunner 程序集,但我发现这是我正在使用的程序集(反复试验)。如果我遇到其他 ReSharper 64 位相关问题,可能需要对其他人执行相同的操作。

希望这能帮助其他人解决同样的问题。

Ok I figured it out. It was indeed the ReSharper TaskRunner that was running as 64-bit, more precisely JetBrains.ReSharper.TaskRunner.CLR4.MSIL.exe. I first created a copy of the file, made it writeable and then forced it's 32BIT flag high:

>corflags JetBrains.ReSharper.TaskRunner.clr4.msil.exe /32bit+ /force

/force because it's signed.

There are several other TaskRunner assemblies but I found this to be the one I'm using (trial and error). Might need to do the same to the others if I run into other ReSharper 64-bit related problems.

Hope this will help others solve the same issue.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文