在 C# 中构建两个 .exe 文件,一个 32 位,另一个 64 位

Building two .exe files in C# One 32 bit and the other 64 bit

我正在做的事情需要程序构建为 32 位和 64 位。所以基本上我想要一个 32 位 MyProgram.exe 然后是 MyProgram.x64.exe 在我构建整个东西时在我的文件夹中。这可能吗?我不知道该怎么做。当我刚刚构建它时,它只是构建了一个 64 位 MyProgram.exe 因为我是 运行 在 64 位机器上,但我想要两个 exe 文件。这可能吗?我使用的是 Visual Studio 2013 express,我不确定如何修改设置来执行此操作。或者我的代码中必须做的事情?

当您使用 JIT 语言时,您可以告诉 JIT 编译器您喜欢哪个平台,但这在技术上取决于 JIT 编译器。您磁盘上的 .exe 文件是 [MS]IL,而不是任何特定平台上的实际可执行文件,因为您可能会使用 C/C++ 编译器。

这当然假设您没有做任何特殊的事情,例如 运行 NGen 或其他 post-processor。

您可以通过设置多个构建配置来构建 64 位或 32 位版本的程序:

Build -> Configuration Manager ...

根据需要将 "Active solution platform:" 设置为 x86 或 x64。

每个构建都必须进入它自己的一组输出文件夹,但您可以创建一个 post 构建步骤来将 exe(和任何其他文件)复制到您需要的位置。

然后,在开发和调试时,您可以选择合适的目标并在您想要发布新版本时构建这两个配置。

如果你想通过点击按钮来完成,你需要指定将其构建为post-build事件。

如果你使用Visual Studio Premier+,你可以使用Build->Batch Build来实现。