宏的最简单替代方法是创建插件。我知道,我知道,我也不对此感到兴奋,但实际上它非常容易。它有三个简单的部分:
- 创建宏项目,逐步完成向导 UI。
- 编写你的代码。
- 将宏的 .addin 和 .dll 文件复制到 Visual Studio
Addins
目录。
让我们使用我编写的一个简单宏来显示关闭解决方案后的起始页并将其转换为加载项。
创建宏项目
- 运行 VS 2012 并创建一个新项目。
- 转到 Templates > Other Project Types > Extensibility 并选择Visual Studio Add-in。
- 给它一个名称,例如 ShowStartPage。
- 单击确定。这将打开加载项向导。
- 逐步完成向导,选择:
- 编程语言:我们将使用 C#
- 应用主机:应选择VS 2012
- 加载项的名称和说明
- 在加载项选项页面上,仅选中第二个选项(“我希望我的加载项在主机应用程序启动时加载”)
- 暂时跳过关于框的内容,然后单击完成。
现在您有一个加载项项目。这是你用它做的事情:
编写代码
打开Connect.cs
文件。(它可能已经打开。一些“DTE”的东西应该看起来很熟悉。)
在类级别添加此代码:
SolutionEvents solutionEvents;
将此代码添加到OnConnection
方法中,就在以下_addInInstance = (AddIn)addInInst;
行之后:
solutionEvents = _applicationObject.Events.SolutionEvents;
solutionEvents.AfterClosing += () =>
{
_applicationObject.ExecuteCommand("View.StartPage");
};
点击“运行”按钮来测试你的代码。一个新的 Visual Studio 2012 实例启动,加载项加载。现在测试加载项并确保它可以正常工作。(打开一个解决方案,然后将其关闭;当您这样做时,起始页应该会返回。)
部署它
一旦加载项工作,要定期将其与 Visual Studio 2012 一起使用,您只需部署两个文件:
ShowStartPage.AddIn
(来自您的主项目目录)
ShowStartPage.dll
(来自项目的构建目录;例如 bin\Debug 或 bin\Release)
将这两个文件放在您的 VS 2012 插件目录中,可能位于此处:
C:\Users\[your user name]\Documents\Visual Studio 2012\Addins
然后退出并重新启动 Visual Studio,您应该会看到加载项正常工作。当您转到“工具”>“加载项管理器”时,您还应该看到它列出。
虽然这比仅仅打开宏编辑器并在其中粘贴宏代码有点麻烦,但它确实具有您可以使用任何您想要的语言的优点,而不是被有点片状的类似 VB 的编辑器困在Visual Studio 的过去版本。