.net core Ilasm.exe在.NET标准2.0 dll中注入mscorlib依赖项

.net core Ilasm.exe在.NET标准2.0 dll中注入mscorlib依赖项,.net-core,ilasm,.net Core,Ilasm,我正在从IL构建一个.NETCore2.0库。我之前对.NETCore1.0/1.1做了完全相同的操作,没有任何问题。但是,对于.NETCore2.0DLL来说,同样的事情不起作用 运行此命令后: C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\ilasm.exe /OUTPUT=output.dll /nologo /quiet /dll /resource=input.dll.res /ssver=6.0 input.dll.il 我收到这

我正在从IL构建一个.NETCore2.0库。我之前对.NETCore1.0/1.1做了完全相同的操作,没有任何问题。但是,对于.NETCore2.0DLL来说,同样的事情不起作用

运行此命令后:

C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\ilasm.exe /OUTPUT=output.dll /nologo  /quiet /dll /resource=input.dll.res /ssver=6.0 input.dll.il
我收到这个警告:

警告:引用未声明的外部程序集“mscorlib”。正在尝试自动检测

因此,
mscorlib
确实作为依赖项出现在output.dll中(我不希望它出现在那里)

在input.dll.il(以及res文件)中,根本没有提到mscorlib(
mscorlib
string从未出现在文件中,我仔细检查了此项):

我试图在工作文件夹中复制netstandard.dll,但没有效果。对于.NET Core 2.0,可能需要一个特殊版本的ilasm.exe?我使用的是.NETFramework4.5中的版本,因为我在.NETCore2.0SDK中没有找到任何ilasm(可能我在错误的地方搜索)。或者还有什么原因


.NET Core 1.0(运行良好)的唯一区别是
.assembly extern'netstandard'
.assembly extern'System.Runtime'

对于.NET Core ilasm有一个相关的问题(可能是从整个框架中派生出来的):

现在看起来是一个非常基本的问题,没有比v2.1更快的错误修复。如果是的话。2.0仅仅是可用的,它还没有被充分调试。Fwiw:由于对只能在Windows桌面上使用的东西有着很强的依赖性,你不会从netstandard中得到任何真正的好处。谢谢。。至于注册部门,这并不重要。该库仍然可以在其他平台上运行,只是功能有限。谢谢。尝试了他们的“.assembly extern netstandard as mscorlib”建议,但它只是将错误消息更改为“引用未声明的外部程序集'netstandard'。正在尝试自动检测”。
//  Microsoft (R) .NET Framework IL Disassembler.  Version 4.6.1055.0
//  Copyright (c) Microsoft Corporation.  All rights reserved.

// Metadata version: v4.0.30319
.module extern 'advapi32'
.module extern 'kernel32'
.module extern 'Kernel32'
.module extern 'Ncrypt'
.module extern 'crypt32'
.module extern 'Crypt32'
.module extern 'secur32'
.assembly extern 'netstandard'
{
  .publickeytoken = (CC 7B 13 FF CD 2D DD 51 )                         // .{...-.Q
  .ver 2:0:0:0
}
.assembly extern 'Microsoft.Win32.Registry'
{
  .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )                         // .?_....:
  .ver 4:1:0:0
}
.assembly 'MyLibrary'
{
...