.NET中x86和64位程序集之间的区别

时间:2010-06-16 09:03:35

标签: .net multiplatform

有人能告诉我32位和64位.NET程序集之间的区别吗?

我知道何时需要精确而不是选择AnyCPU配置。

此致 美达

3 个答案:

答案 0 :(得分:3)

.NET中的程序集目标很少 * x86 - 32位,应用程序将在Win64上以32位进程运行 * x64 - 64位,应用程序将在Win64上以64位进程运行,无法在32位系统上运行。 * AnyCPU - 应用程序将使用最合适的定位。 * IA64 - Intel Itanium平台

通常,在纯托管应用程序中,最合适的目标是AnyCPU。如果您的应用程序使用PInvoke或COM组件,则可能需要根据您使用的非托管组件的目标来定位应用程序。

答案 1 :(得分:2)

答案 2 :(得分:0)

在与其他应用程序(通过COM)交互时,我遇到了运行x64位代码的问题。

DLL / EXE的标题中有一些设置为x86或x64代码,.Net加载器会查看。 IL没有改变。您甚至可以在编译后使用CorFlags

进行设置