CS文件在VS中表现怪异

时间:2018-10-15 02:54:08

标签: c# if-statement uwp

#if _WIN32
        const string DLL_NAME = "uFCoder-x86.dll"; // for x86 target
#elif _WIN64
        const string DLL_NAME = "uFCoder-x86_64.dll"; // for x64 target
#else // #elif _ARM
        const string DLL_NAME = "uFCoder-arm.dll"; // for ARM target
#endif

有人知道这里发生了什么吗?我尝试从MainPage调用CS文件并在调试64/84中运行。正确,当我在64/84运行时之间切换时,它应该进行相应的更改,但是在将文件移动到新位置后,它始终停留在其他条件下,并且返回也出错。我在UWP Visual Studio中运行它。

1 个答案:

答案 0 :(得分:0)

C#中没有开箱即用的_WIN32或_WIN64预处理程序指令。请参阅#if (C# Reference)

您将必须自行定义它们或使用其他机制。您可以签出C# Directive to indicate 32-bit or 64-bit build


要自己定义符号

解决方案属性->项目属性->构建->将它们添加到条件编译符号:

enter image description here

请记住将其添加到调试和发布配置中。

另外,请注意,这是针对每个项目的,而不是针对整个解决方案的。