我在VS2017中创建了一个CLR项目。
包含:
库中定义了一个简单的ref类。 该类是从我的C#代码中调用的。 我对它的性能很好,但是它并不总是能正常工作。
这取决于我的运行方式。
因此,在Debug and Release中,它仅在CLR类库在Win32中运行时才起作用。
我犯错了还是这是预期的行为?
谢谢!
答案 0 :(得分:1)
通常,使用C ++ / CLI语言的目的(我假设这就是“ CLR库”的意思)是同时使用本机和.Net对象。由于本机代码的原因,二进制库绑定到32位或64位平台。显然,您的情况是32位(x86)。
答案 1 :(得分:0)
回答我的问题。
Hans Passant写道:
更改解决方案平台仅影响C ++ / CLI项目,而不影响C#项目。右键单击C#项目>“属性”>“构建”选项卡以选择要使用的抖动。取消选中x64解决方案配置的“首选32位”复选框。再次进行Release配置。
当我在“构建”部分下的C#项目属性中取消选中“首选32位”时,此方法有效。 谢谢!