我的开发机器是Win XP Pro 32位,生产机器是
Windows Server 2008(64位)与IIS 7.在我的开发机器上,我想编译ASP.NET(使用aspnet编译器)到64位字节代码.
有人可以告诉我怎么做吗请不要建议任何方式在64位环境下运行32位应用程序.
我希望在32位机器上编译64位应用程序,以便在运行时将充分利用64位O / S,无需任何仿真.
解决方法
将目标平台留在Anycpu,当在64位操作系统上执行时,.NET将自动在64位运行
澄清:
(这开始是作为一个评论,但我认为这可能是有趣的问题)
其实你永远不会编译到一个特殊的架构.你总是编译到IL.
这就像Java字节码.而32位和64位的字节码是相同的.
虚拟机(.NET Framework)在机器上执行代码,然后在运行时(通过Just In Time编译)将IL编译为实际的机器代码.所以,无论你在哪里编译,你总是会在IL中最终无知.
.NET中的设置只是IL中的一个指令,它告诉JIT(即时编译器)专门使用32位/ 64位.通过在程序集中翻转一位,您仍然可以在Anycpu或x64中执行,无需重新编译.