假设我有一个基于 C# 开发的 Windows 应用程序。我想确保它适用于 32 位和 64 位。但我不想一次又一次地更改配置设置或应用程序设置。有没有办法测试这两种变体?
最佳答案
有几个选项。
您可以针对
AnyCPU
。如果您的程序是 100% C#/托管代码,没有 native 依赖项,这将导致它在 64 位操作系统上运行 64 位,在 32 位操作系统上运行 32 位。目标 x86。这将导致它在任何地方运行 32 位,这在 64 位 Windows 上正常工作(通过 WOW64)。如果您使用 native (32 位)库,这也能正常工作。
进行两次构建和两次单独的部署。这允许您使用 native 代码并仍然在 64 位操作系统上运行 64 位,但工作量要大得多。
由于 32 位应用程序在 64 位操作系统上运行良好,因此很少有理由在 64 位 native 上运行该程序。这通常只有在您处理大量数据并且确实需要访问比 32 位进程更大的内存空间时才真正有用。在 .NET 中,这通常意味着如果您要为程序使用超过 1.2-1.6gb 的 RAM,则需要构建 64 位。否则,32 位在任何地方都可以正常工作。
关于c# - 32 位和 64 位 C#.NET 中的多目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11399805/