浅谈 Visual Studio .NET 的宏

摘要
随着.NET深入人心,相信越来越多的Programmer对它也驾轻就熟了吧,然而是否有人注意到了VS.NET中一个超强的扩展功能—宏!.NET的宏提供了大约200多个对象,无论是简单的按键记录功能、还是高级的外挂,甚至是和IDE的互动,都让你觉得拥有了对Visual Studio IDE的空前控制感。

目录
1. VS.NET宏简介
2. VS.NET宏编辑器
3. 小结

1. VS.NET宏简介
宏是保存在文件中的指令集合,用于后期执行,作为扩展工具,它具有开发快速、功能强大等诸多优势。而VS.NET的宏有一更具诱惑的方面—代码完全基于.NET,也就是说可以使用.NET的类库,并且宏代码允许写成XML文件、同时能够调用窗体和远程的Web Services。
下面举出一个简单的录制宏的例子:
1. 选择Visual Studio .NET的菜单项Tools->Macros->Record TemporaryMacro进行宏录制,或者直接使用快捷键Ctrl + Shift + R
2. 在VS.NET的代码编辑环境中随意写入些字母
3. 完成后,在已弹出浮动的宏工具条中选择停止
4. 使用Visual Studio .NET的菜单项Tools->Macros->Run TemporaryMacro就可以回放刚刚录制的宏了,或者直接使用快捷键Ctrl + Shift + P
这些操作是不是似曾相识啊?没错,先前的几步简单宏操作和Office中的宏录制步骤是差不多的。实际上刚才的宏代码是使用Visual Basic .NET创建的,如果想查看刚才录制的宏代码,就可以选择菜单项Tools->Macros->Macro Explorer(Alt + F8),弹出树型宏模块查看窗体,如下图


2. VS.NET宏编辑器
在Macro Explorer中使用鼠标右键菜单,选择Edit,便会出现Visual Studio .NET Macros IDE(宏编辑器)了。Visual Studio .NET Macros IDE基于Visual Studio技术,是编写、调试以及运行宏的好帮手。宏编辑器同时可以通过Visual Studio .NET的菜单项Tools->Macros-> Macros IDE…(Alt + F11)启动,界面如下图

和Visual Studio .NET IDE类似,宏编辑器包括代码录入窗体,工程浏览、任务列表等工具窗体。之所以宏是使用VB.NET来编码,主要归因于世界上庞大的Basic开发人员,他们可以利用熟练的技术为VS.NET开发出功能强劲的宏,如在VS.NET IDE的代码编辑窗口中显示行号、自动备份工程文件,下面的例子就是将当前行代码注释。
Dim selText As TextSelection
selText = DTE.ActiveDocument.Selection
Dim ptStart As EditPoint
ptStart = selText.ActivePoint.CreateEditPoint()
ptStart.StartOfLine()
Dim undoObj As UndoContext = DTE.UndoContext
undoObj.Open("Comment Region")
ptStart.Insert("'")
undoObj.Close()
上面代码中所使用的这些对象都被包含在EnvDTE名称空间里面,因此在编写宏代码之前一定要引入
Imports EnvDTE
值得注意的是在初学宏编程的时候,我们应该多使用"录制宏"功能,以便学习VS.NET的宏代码编写策略。

3. 小结
今天的集成开发环境已经变得越来越高级了,每个开发人员在使用IDE的时候也都及尽个性化的体现自己的风格,而Visual Studio .NET的宏是最能满足大众要求的一个,它可以让你做到游刃有余的控制IDE。

作者:孟庆臣

版权声明
凡在本网站发表的文章,作者必须保证是原创文章;如果不是原创文章,由此带来的版权纠纷由作者自己承担。微软有义务对本站点发表的文章进行审核,但您需要考虑这些文章的使用风险。本站点仅提供一个用户相互交换技术信息和学习的园地,并不对来自社区用户的技术文章承担任何风险。