在nuget包中添加第三方COM参考

时间:2018-06-25 08:45:15

标签: c# visual-studio nuget com-interop

对于整个NuGet软件包,我还是一个相对较新的人,目前,我正在努力尝试包含一个引用的COM DLL。

我有一个用于Autodesk Inventor的实用程序库。因此,我包括了COM参考。

References

现在,我希望Visual Studio自动创建NuGet程序包

enter image description here

因此,每次构建项目时,Visual Studio都会重新创建.nuspec文件并生成程序包,但不幸的是,没有将引用的Inventor DLL添加到NuGet程序包内的lib文件夹中。我读了很多有关手动添加或编辑.nuspec文件的信息,但是有没有更简单的解决方案,Visual Studio可以为我做这部分呢?

我正在使用VS2017

预先感谢

1 个答案:

答案 0 :(得分:2)

  

我了解了很多有关手动添加或编辑.nuspec文件的信息,但是有没有更简单的解决方案,Visual Studio可以为我做这部分呢?

就像汉斯所说,我们不建议您为依赖COM服务器的库构建nuget包。但是,如果您坚持使用它,恐怕您必须手动执行或编辑.nuspec文件。

因为它是用<COMReference>而不是<PackageReference>添加的,所以我们不能使用Controlling dependency assets将这些dll文件添加到NuGet包中,而Visual Studio中没有这样的选项我们可以将该COM dll包含在nuget包中。

因此,要解决此问题,我们必须手动完成或编辑.nuspec文件,您可以检查以下线程以了解更多详细信息:

Create nuget package from dlls

希望这会有所帮助。