作者:朱金灿

 

     VisualStudio的一种重要的扩展方式是编写宏代码。下面以一个简单例子说明如何编写宏代码。

 

1. 建立宏工程。选择“Tool”菜单栏下Macros菜单下的New Macro Project.


2. 输入工程名:CloseIntelliSense(关闭智能感知)


3. 双击Module1节点,如下:


4. 在弹出的Macro IDE中输入下面代码:


 

Option Strict Off

Option Explicit Off



Imports System

Imports EnvDTE

Imports EnvDTE80

Imports EnvDTE90

Imports System.Diagnostics



Enum ISENSE_FLAGS



ISENSE_NORMAL = 0 'normal(Intellisense On)



ISENSE_NOBG = &H1 'no bg parsing(Intellisense Updating Off - although NCB file will be opened r/w andrepersisted at shutdown)



ISENSE_NOQUERY = &H2 'no queries(don't run any ISense queries)



ISENSE_NCBRO = &H4 'no saving ofNCB (must be set before opening NCB, doesn't affect updating or queries, justpersisting of NCB)



ISENSE_OFF = &H7 'no bgparsing, no queries, no saving of NCB, ncb will still be opened, however



End Enum





Public Module IntellisenseModule



SubIntellisense_Off()



DTE.Properties("TextEditor", "C/C++Specific").Item("IntellisenseOptions").Value= ISENSE_FLAGS.ISENSE_OFF



EndSub



SubIntellisense_On()



DTE.Properties("TextEditor", "C/C++Specific").Item("IntellisenseOptions").Value= ISENSE_FLAGS.ISENSE_NORMAL



EndSub



End Module


5. 编译运行宏代码,如下:


6. 可以看到Visual Studio宏工程节点下生成了两个子节点,说明宏代码编译成功。如下:


7. 右键单击工具栏,弹出右键菜单,选择“Customize…”菜单项,如下:


8.选择命令选项卡,在Categories中选择Macro选项,可以看到新添加的宏命令.


9. 拖拽在第8步中的对话框宏命令选项,可以把它拖到任何的工具栏或者菜单栏


       如果你想删除该宏,也可以随时拖走。

 

10. 为宏分配快捷键:“工具->选项->键盘”中选定相应的宏函数,然后分配快捷键。自己完全可以跟根自身的喜好来设定。