标签 .NET Framework 下的文章

  1. 生成snk(如果有则跳过):

    sn -k MyKeyPair.snk
  2. 生成公钥文件

    sn -p MyKeyPair.snk MyKeyPair.Public.snk
  3. 显示公钥

    sn -tp MyKeyPair.Public.snk

  1. 反汇编 DLL

    ildasm /all /out:Assembly.il YourAssembly.dll
  2. 修改 IL 文件
    在生成的 Assembly.il 文件中添加强名称密钥引用:

    .assembly YourAssembly
    {
      .publickey = (生成的公钥令牌)
      .ver 1.0.0.0
    }

    如:

      .publickey = (00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00   // .$..............
                 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00   // .$..RSA1........
                 17 51 79 E3 E5 00 53 AA 1D 7C 9D 09 31 0D D2 AE   // .Qy...S..|..1...
                 CD 6E 80 FF C7 33 14 9E CD 64 AA 2E F1 D0 A7 0C   // .n...3...d......
                 BF 92 D4 70 E1 7E 42 60 AF 61 21 63 5F 68 03 07   // ...p.~B`.a!c_h..
                 A2 A3 B3 96 AC BC 38 BC 46 19 33 D9 9D 30 07 21   // ......8.F.3..0.!
                 FC 8D FC 8F 89 C0 8A 33 80 69 59 3B 36 54 3F A2   // .......3.iY;6T?.
                 5F 1D CF 63 44 43 2C 40 E0 4D CB 1D 1C 18 DB C5   // _..cDC,@.M......
                 14 DC C9 A6 35 AF 28 3F 44 E1 E9 8B 06 6D 70 8B   // ....5.(?D....mp.
                 0F F5 7E 92 6C AB 3D 1B 0D 41 7E 34 E4 1A 45 E1 ) // ..~.l.=..A~4..E.
    
  3. 创建强名称密钥(如果没有):

    sn -k MyKeyPair.snk
  4. 重新汇编

    ilasm /dll /key=MyKeyPair.snk /output=YourAssembly_Signed.dll Assembly.il

Visual Studio 版本.NET 版本C# 版本主要新特性(C#)
VS 2022 (17.0+).NET 6-9C# 10-12记录结构、全局using、文件作用域命名空间、原始字符串字面量等
VS 2019 (16.0+).NET Core 3.x/.NET 5C# 8.0-9.0默认接口方法、异步流、索引和范围、模式匹配增强等
VS 2017 (15.0+).NET Core 1.x-2.xC# 7.0-7.3元组、模式匹配、本地函数、ref返回值等
VS 2015.NET 4.6C# 6.0空条件运算符、字符串插值、nameof表达式等
VS 2013.NET 4.5.1C# 5.0异步/await、调用者信息特性
VS 2012.NET 4.5C# 5.0异步/await(主要)
VS 2010.NET 4.0C# 4.0动态类型、命名参数、可选参数
VS 2008.NET 3.5C# 3.0LINQ、Lambda表达式、扩展方法
VS 2005.NET 2.0C# 2.0泛型、匿名方法、迭代器

以下是汇总了Windows每个版本自带的“.NET版本”,与支持的最高“.NET版本”的表格

Windows版本自带.NET Framework 版本支持最高的 .NET Framework 版本
Windows NT 4.0 SP6a、2000 .NET Framework 1.1 SP1
Windows 98, 98SE, Me, 2000 SP3 .NET Framework 2.0
Windows 2000 SP4 .NET Framework 2.0 SP2
Windows XP SP1.NET Framework 1.0 SP2.NET Framework 1.0 SP2
Windows XP SP2.NET Framework 1.1 SP1.NET Framework 3.5 SP1
Windows XP SP3.NET Framework 1.1 SP1.NET Framework 4.0
Windows Vista.NET Framework 3.0.NET Framework 3.5 SP1
Windows Vista SP1.NET Framework 3.0 SP1.NET Framework 4.0
Windows Vista SP2.NET Framework 3.0 SP2.NET Framework 4.6
Windows 7.NET Framework 3.5.1 SP1.NET Framework 4.0
Windows 7 SP1.NET Framework 3.5.1 SP1Latest
Windows 8.NET Framework 3.5.1 SP1 + 4.5.NET Framework 4.6.2
Windows 8.1.NET Framework 3.5.1 SP1 + 4.5.1.NET Framework 4.5.2
Windows 8.1 Update.NET Framework 3.5.1 SP1 + 4.5Latest
Windows 10 (1507).NET Framework 4.6Latest
Windows 10 (1511).NET Framework 4.6.1Latest
Windows 10 (1607).NET Framework 4.6.2Latest
Windows 10 (1703).NET Framework 4.7Latest
Windows 10 (1709).NET Framework 4.7.1Latest
Windows 10 (1803 ~ 1809).NET Framework 4.7.2Latest
Windows 10 (1903 ~ v20H2).NET Framework 4.8Latest
Windows 11.NET Framework 4.8Latest

来源:zwcad