关于VS插件开发的一篇很懒的笔记。
Demo
Demo在这里:
DllReferencePathChanger
微软官方Demo在这里:
VSSDK-Extensibility-Samples
基本步骤看这里:
Visual Studio 2015 插件开发 从入门到放弃
visual Studio 2017 扩展开发(一)《向Visual Studio菜单栏新增一个菜单》
visual Studio 2017 扩展开发(二)《菜单图标详解》
如果需要引用其它的工程项目,需要为这些项目添加强名称签名。
方法在这里:
如何:使用强名称为程序集签名
上述的第一个Demo中,就是引用了一个WPF窗口程序,用于实现插件与用户的交互。
如何获取当前解决方案的一些信息?
通过 EnvDTE.DTE
类型
// 节选自 第一个Demo
private EnvDTE.DTE _dte;
internal EnvDTE.DTE DTE
{
get
{
if (_dte == null)
_dte = ServiceProvider.GetService(typeof(EnvDTE.DTE)) as EnvDTE.DTE;
return _dte;
}
}
var solution = DTE.Solution;
其它参考文章: