C# 编译器 :/nostdlib option

标签 c# .net mscorlib

这怎么可能在编译时不将 stdlib (mscorlib.dll) 包含到我的 C# 应用程序中?据我所知,所有类都继承了 System.Object 类,该类定义在 mscorlib.dll 中。更重要的是 - 诸如 int 之类的类型只是别名,例如对于 System.Int32,它们也在 mscorlib 中定义。这个选项曾经被使用过吗?

最佳答案

是的,任何编译不使用 CLR 桌面版本运行的程序的人都使用它。与 Silverlight 一样,它以 .NETCore 或 Micro Framework 为目标。他们有自己的 mscorlib.dll,当然是用 System.Object 定义的。

这是示例 Silverlight 项目的编译器命令行:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc.exe /noconfig /nowarn:1701,1702 
/nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE;SILVERLIGHT
/reference:"c:\Program Files\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\mscorlib.dll" 
  etc...

关于C# 编译器 :/nostdlib option,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3383130/

相关文章:

c# - 如何在通用 Windows 中更新通知

.net - 如何在 .Net/Mono 中解码 wav、mp3 和/或 ogg?

c# - mscorlib.dll 中出现“System.ArgumentOutOfRangeException”

linux - Mono 使用 mscorlib.dll 2.0 而不是 4.0

c# - mscorlib 5.0.5.0 中缺少 System.Security.Cryptography.RSA

使用特定域帐户时 C# Windows 服务不运行

c# - Visual Studio 命名空间约定

c# - 为标签添加右边框

java - Couchbase 的 memcached 实现中 Java 和 .Net 之间的数据共享

.net - IANA 到 Windows 时区的映射