为了完成一些测试,我需要加载一个64位版本的程序集,即使我正在运行32位版本的Windows操作系统。这可能吗?
来自CLR Via C#(Jeff Richter):
“如果您的程序集文件仅包含类型安全的托管代码,则编写的代码应该可以在32位和64位版本的Windows上运行。不需要对源代码进行任何更改即可在任何版本的Windows上运行您的代码。
事实上,编译器生成的结果EXE / DLL文件将在32位Windows以及64位Windows的x64和IA64版本上运行!换句话说,一个文件将在任何安装有.NET Framework版本的机器上运行。”
“C#编译器提供/ platform命令行开关。此开关允许您指定生成的程序集是否只能在运行32位Windows版本的x86计算机、运行64位Windows版本的x64计算机或运行64位Windows版本的Intel Itanium计算机上运行。如果您没有指定平台,则默认为anycpu,表示生成的程序集可以在任何版本的Windows上运行。
”32位的Windows系统无法在没有虚拟机或模拟器的情况下运行64位的可执行文件。
32位的Windows系统可以编译为在64位的Windows系统上运行。
不可以在运行32位Windows版本的系统上运行为64位编译的程序集。