VS扩展开发 从示例程序出发
VS扩展开发
首先可以使用Visual Studio 自带的扩展模版构建示例程序,初步熟悉VS扩展编程的大致工作流程。
需要的安装环境
根据要针对的VS版本下载对应的VS SDK,对于VS2010需要去微软官网下载SDK,对于VS2017只需要使用安装程序添加开发功能模块即可,
使用VS模版构建示例程序
1.使用VS2017构建的示例程序只有以下文件:
index.html和stylesheet.css:说明文件可以删除;
source.extension.vsixmanifest:VSIX打包使用的文件,详细说明:
2.添加Package文件:
在项目中新建项中选择Visual Studio AsyncPackage,此时工程中又会新增一些文件:
Resources:资源文件夹文件下有一个Package的默认图标;
Key.snk:当前工程的SNK文件,对于每个package必须被所谓的package load key(PLK)签名,Visual Studio通过它来检查package的合法性。Visual Studio只会加载拥有合法PLK的package。
参考:https://docs.microsoft.com/zh-cn/visualstudio/extensibility/signing-vsix-packages
VSIXPackage.cs:继承自AsyncPackage的Package的核心类,相当于Main函数入口,由于是根据Visual Studio启动的外部插件,加载该插件时会示例化该类;(在VS2017是继承自AsyncPackage,采用异步方式加载;2010中继承自Package,同步加载方式,AsyncPackage也继承自Package类);
3.在工程中添加命令
此时工程中会自动添加与Package.cs同名的vsct文件以及Command类文件;
Command.cs:定义命令的初始化,命令执行函数等,以及必须的GUID和ID;
*.vsct:定义命令的显示和布局,包括:显示到那个菜单或者工具栏中,显示内容,图片等相关UI部分;
参考:https://docs.microsoft.com/zh-cn/visualstudio/extensibility/vsct-xml-schema-reference
此时运行时,就会启动一个VS的实验实例进行调试。
在工具下拉菜单中看一个新的菜单项。