有人能告诉我 32 位和 64 位 .NET 程序集之间的区别吗?
我了解何时需要精确而不是选择 AnyCPU 配置。
问候,米塔
.NET * x86 - 32bit 的汇编目标很少,应用程序将作为 32 位进程运行,在 Win64 * x64 - 64 位上,应用程序将在 Win64 上作为 64 位进程运行,在 32 位系统上运行失败。* AnyCPU - 应用程序将使用最合适的定位。* IA64 - 英特尔安腾平台
通常,在纯托管应用程序中,最合适的目标是 AnyCPU。如果您的应用程序使用 PInvoke 或 COM 组件,您可能需要根据您使用的非托管组件的目标来定位您的应用程序。
这些应为您提供所询问的信息:
在与其他应用程序交互(通过 COM)时,我在运行 x64 位代码时遇到了一些问题。
DLL/EXE 的标头中有一些位设置为 x86 或 x64 代码,.Net 加载程序会查看这些位。IL 没有改变。您甚至可以在编译后使用CorFlags设置它