//===============================================================================
// Date Created: 2005年8月15日
// Created By:   Generated by CodeSmith
//===============================================================================在程序中经常要进行这样的注释,能不能自动生成,尤其是日期.在VS2003中有这样的功能吗?

解决方案 »

  1.   

    宏或者addinEnvironmentEvents文件
    <System.ContextStaticAttribute()> _ 
    Public WithEvents csharpProjectItemsEvents As EnvDTE.ProjectItemsEventsPrivate Sub DTEEvents_OnStartupComplete() Handles DTEEvents.OnStartupComplete
        csharpProjectItemsEvents = DTE.Events.GetObject("CSharpProjectItemsEvents")
    End Sub Private Sub csharpProjectItemsEvents_ItemAdded(ByVal ProjectItem As EnvDTE.ProjectItem) Handles csharpProjectItemsEvents.ItemAdded
        Dim textDocument As EnvDTE.TextDocument
        Dim startPoint As EditPoint    textDocument  = DTE.ActiveDocument.Object("TextDocument")
        startPoint = textDocument.StartPoint.CreateEditPoint()
        startPoint .Insert("Your string")End Sub
      

  2.   

    楼上的能帮我解释一下这段代码的意思吗,或者提供点有关VS.NET宏的资料吗?
      

  3.   

    用宏实现是正解!我在codeproject上面看到过很多功能强大的宏,你可以学学自己写
      

  4.   

    不好意思,现在才回来
    vs.net使用的自动化模型继承于vc++6.0,宏只能用vb.net写,但是功能不限
    每个宏项目都有一个EnvironmentEvents文件,这里通过左边下拉选择变量,右侧下拉选择事件,生成事件handle。方式有点怪,因为vs.net是com的缘故
    你的问题我给出的回答基于如下,如果项目中加入一个新文件,那么就在该文件头加入注释。这里没有判断文件类型,也没定义注释内容,这些你可以方便自定义
    <System.ContextStaticAttribute()> _ 
    Public WithEvents csharpProjectItemsEvents As EnvDTE.ProjectItemsEvents
    定义c#项目事件,项目事件特殊,默认没有下拉选择的,定义后才有Private Sub DTEEvents_OnStartupComplete() Handles DTEEvents.OnStartupComplete
        csharpProjectItemsEvents = DTE.Events.GetObject("CSharpProjectItemsEvents")
    End Sub
    右侧选择DTEEvents,左侧选择OnStartupComplete,该事件是vs.net ide启动完成后触发
    csharpProjectItemsEvents = DTE.Events.GetObject("CSharpProjectItemsEvents")
    获取ide的c#项目事件给定义,
    右侧选择csharpProjectItemsEvents,左侧选择ItemAdded事件Private Sub csharpProjectItemsEvents_ItemAdded(ByVal ProjectItem As EnvDTE.ProjectItem) Handles csharpProjectItemsEvents.ItemAdded
        Dim textDocument As EnvDTE.TextDocument
        文本文档
        Dim startPoint As EditPoint
        编辑点,自动化模型方式    textDocument  = DTE.ActiveDocument.Object("TextDocument")
        当前文档的文本文档,还可以有设计文档,ide中部文档窗体
        startPoint = textDocument.StartPoint.CreateEditPoint()
        开始点
        startPoint.Insert("Your string")
        插入
    End Sub
    自动化模型参照msdn,Object方法是IQueryInterface接口,可能会有些不适应
    你的问题我想想,还有一个方法,就是自定义wizard,替换vs.net现用的那个,这样可以区分existing item和new item