我应该选择什么选项来为 32 位平台服务器在 64 位平台上编译程序集。目前我正在尝试发布到 32 位服务器。我在 Windows Vista 机器上使用 VS2005 来构建我的项目,然后在服务器上发布,但我遇到了错误。知道如何解决这个问题。
我应该在 64 位机器上使用 AnyCPU 选项还是混合平台选项。x86 的选项也被禁用,我不知道为什么。
我应该选择什么选项来为 32 位平台服务器在 64 位平台上编译程序集。目前我正在尝试发布到 32 位服务器。我在 Windows Vista 机器上使用 VS2005 来构建我的项目,然后在服务器上发布,但我遇到了错误。知道如何解决这个问题。
我应该在 64 位机器上使用 AnyCPU 选项还是混合平台选项。x86 的选项也被禁用,我不知道为什么。
使用任何CPU。只要您的程序集没有任何直接的非托管依赖项或对标记为特定 CPU 的程序集的依赖项,那么您的程序集就可以在 64 位或 32 位上正常工作
假设您使用托管语言工作,那么编译到“AnyCPU”应该是跨平台的(64/32 位),因为生成的 IL 不会变成机器指令,直到代码在运行时被 JITted。
如果您使用某些依赖于指针大小等的结构,则有极少数例外情况可能会导致位依赖,但这些通常不会出现在您的代码中,尽管在您的代码上运行 FxCop 并没有什么坏处确保代码(在 FxCop 中有一节处理涉及这些问题的可移植性)