Visual Studio扩展,dll部署和锁定[C#,VSIX]

时间:2019-07-05 11:46:26

标签: c# vsix

我需要在VSIX项目中使用CodeAnalysisCSharp的帮助。

我当前遇到的问题是安装扩展程序时未“部署”必要的dll。我不得不手动将这些文件复制/粘贴到C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE文件夹中,以使其“工作”。

System.Numerics.Vectors.dll
System.Runtime.CompilerServices.Unsafe.dll
System.Memory.dll
Microsoft.CodeAnalysis.dll
Microsoft.CodeAnalysis.CSharp.dll

我创建了一个扩展项目并添加了一个自定义命令。此命令应该能够使用CodeAnalysisCSharp来导航C#文件的语法树。

我非常希望安装程序文件(.vsix)能够部署dll依赖项,就像您期望的那样,我只是不知道如何或在何处实现此目标

谢谢。

1 个答案:

答案 0 :(得分:0)

我发现,如果您使用vsixmanifest文件添加资产,并给它提供一个子文件夹,则不会正确打包该文件。这些文件将被正确复制,但是对dll的引用不正确,因此会出现“找不到dll”异常。 通常,vsixmanifest设计器似乎充满了怪异之处,您需要编辑xml代码以确保正确设置值。