通过开始第一个程序,了解一个VSPackage开发过程:

一、编写自己的第一个扩展:Hello World

1、新建VSIX项目,并命名为SayHelloWorld
Visual Studio 扩展入门(二)HelloWorld 上篇_重置
2、添加自定义命令,添加新建项 Command,并命名为SayHelloWorld.cs
Visual Studio 扩展入门(二)HelloWorld 上篇_工具栏_02
3、修改Execute()方法中message的赋值为

string message = "Say HelloWorld !";

4、修改SayHelloWorldPackage.vsct中元素中的的内容为:

Say SayHelloWorld!

5、按F5调试,打开一个Visual Studio 实验示例。打开“工具”菜单,点击“Say SayHelloWorld!”按钮。
Visual Studio 扩展入门(二)HelloWorld 上篇_ide_03
6、弹出提示框:
Visual Studio 扩展入门(二)HelloWorld 上篇_重置_04

二、Visual Studio 实验示例

Visual Studio 实验示例是为了保护你的 Visual Studio 开发环境,在运行未测试的应用程序的一个调试IDE实验。
具有 VSIX 包的每个应用程序在调试模式下启动 Visual Studio 实验实例。
如果要在特定解决方案外启动 Visual Studio 的实验实例,请在命令窗口中运行以下命令:

" <VS2019安装路径> \Common7\IDE\devenv.exe"/RootSuffix Exp


卸载实验示例中安装的扩展Vspackage有三种方法:

  1. 重置 Visual Studio 实验实例

1.在计算机的 "开始" 页上查找 "重置 Visual Studio 实验实例 "点击
2.在命令行输入:
<VS2019安装路径>"Microsoft Visual Studio 14.0\VSSDK\VisualStudioIntegration\Tools\Bin\CreateExpInstance.exe" /Reset /VSInstance=14.0 /RootSuffix=Exp

  1. 卸载扩展。

单击 "工具" " > 扩展和更新" 和 "卸载"

  1. 注销 VSPackage 程序集。

在命令行输入:
<VS2019安装路径>"Microsoft Visual Studio 14.0\VSSDK\VisualStudioIntegration\Tools\Bin\regpkg" /unregister <VSPackage程序集路径>

三、Visual Studio 命令表格 (.Vsct) 文件


.Vsct文件基于 XML 的语法,描述命令表用于编译器。VSPackage 可以通过 .vsct 文件将 (UI) 元素(例如,菜单、工具栏和工具窗口)添加到 Visual Studio 的用户界面。

命令表格文件内有三种基本类型的项:菜单、命令和组。

  • 菜单可以在 UI 中作为菜单、子菜单、工具栏或工具窗口公开。
  • 命令是用户可以在 IDE 中执行的过程,它们可以作为菜单项、按钮、列表框或其他控件公开。
  • 组是用于菜单和命令的容器。


每一项由描述项的定义、其相对于其他项的优先级以及修改其行为的标志指定。

每个项都有一个描述项的父项的位置。 一个项可以有多个父项,因此它可以出现在 UI 中的多个位置。

四、Command

Command命令是向 Visual Studio 添加操作和过程的方式。
命令是在 VSPackage 项目中的 .vsct 文件中定义的。当通过新建项添加Command命令,编译器会自动在.vsct文件中添加关于命令的定义。
在Command中Execute ()的方法,是Command模板中自带的触发回调,可以通过修改触发回调实现不同效果。


下一篇,通过实现Visual Studio打开记事本,更深入理解Command的结构和用法。