C#编译器选项(目标平台)

用vs编译C#项目的设置中,“属性-生成-目标平台”有anycpu,x86,x64等选项。

  • anycpu(默认值)将编译程序集为使其在任意平台上都可以运行。 在任何可能的时候,应用程序作为 64 位进程运行;仅当该模式只可用时,才会回退到 32 位。

  • x86将程序集编译为由与 x86 兼容的 32 位公共语言运行时运行。

  • x64 将程序集编译成可由 64 位公共语言运行库在支持 AMD64 或 EM64T 指令集的计算机上运行。

在 64 位 Windows 操作系统上:

  • 用 /platform:x86 编译的程序集将在运行于 WOW64 下的 32 位 CLR 上执行。

  • 用 /platform:anycpu 编译的 DLL 将在加载该进程的同一 CLR 上执行。(例如:IIS应用程序池中,“启用32应用程序”为True时,则在32位CLR上执行,否则在64位CLR上执行)

  • 用 /platform:anycpu 编译的可执行文件将在 64 位 CLR 上执行。

详细参考:https://msdn.microsoft.com/zh-cn/library/zekwfyz4(v=vs.120).aspx

posted @   MrHacker  阅读(2818)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示