既然它使用的是登陆的用户名,那它很可能是通过Environment.UserName得到的,于是搜索“Environment.UserName”,果然搜索到一行:
sRes.Append(Environment.UserName)
我把这行代码改成:
sRes.Append(“胡丹”)
重新编译工程,重新安装VBCommenter,敲入’’’,然后回车,果然是变过来了:
'
'' -----------------------------------------------------------------------------
' '' <summary>
' ''
' '' </summary>
' '' <remarks>
' '' </remarks>
' '' <history>
' '' [胡丹] 2005-8-5 Created
' '' </history>
' '' -----------------------------------------------------------------------------
Public Sub New() Sub New()
End Sub
' '' <summary>
' ''
' '' </summary>
' '' <remarks>
' '' </remarks>
' '' <history>
' '' [胡丹] 2005-8-5 Created
' '' </history>
' '' -----------------------------------------------------------------------------
Public Sub New() Sub New()
End Sub
但是这样也太不灵活了,只能自己使用,不够通用,那就加个配置用户名的功能吧。
1. 配置用户名的界面
直接利用frmSettings窗体,增加一个Label和TextBox用来修改用户名,界面如下:
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
2. 在Configuration.vb中增加下面的属性:
'
自定义用户名保存在注册表中的键名
Private Const keyHistoryUserName As String = " HistoryUserName"
' '' -----------------------------------------------------------------------------
' '' <summary>
' '' 自定义用户名
' '' </summary>
' '' <value></value>
' '' <remarks>
' '' </remarks>
' '' <history>
' '' [胡丹] 2005-8-5 Created
' '' </history>
' '' -----------------------------------------------------------------------------
< ComponentModel.Category( " General " ), _
ComponentModel.Description( " UserName " ), _
ComponentModel.DefaultValue( " Environment.UserName " ) > _
Public Property HistoryUserName() As String
Get
Return mConfigImp. GetSetting (keyHistoryUserName, System.Environment.UserName)
End Get
Set ( ByVal sValue As String )
mConfigImp.SetSetting(keyHistoryUserName, sValue)
End Set
End Property
Private Const keyHistoryUserName As String = " HistoryUserName"
' '' -----------------------------------------------------------------------------
' '' <summary>
' '' 自定义用户名
' '' </summary>
' '' <value></value>
' '' <remarks>
' '' </remarks>
' '' <history>
' '' [胡丹] 2005-8-5 Created
' '' </history>
' '' -----------------------------------------------------------------------------
< ComponentModel.Category( " General " ), _
ComponentModel.Description( " UserName " ), _
ComponentModel.DefaultValue( " Environment.UserName " ) > _
Public Property HistoryUserName() As String
Get
Return mConfigImp. GetSetting (keyHistoryUserName, System.Environment.UserName)
End Get
Set ( ByVal sValue As String )
mConfigImp.SetSetting(keyHistoryUserName, sValue)
End Set
End Property
3.在frmSettings.vb中添加如下代码:
Private
Sub
frmSettings_Load(
ByVal
sender
As
System.
Object
,
ByVal
e
As
System.EventArgs)
Handles
MyBase
.Load
' 显示以前设置的自定义用户名(也可以加在sub new()中)
txtUserName.Text = myConfig.HistoryUserName
End Sub
' 显示以前设置的自定义用户名(也可以加在sub new()中)
txtUserName.Text = myConfig.HistoryUserName
End Sub
4. 修改窗体frmSettings中OK按钮的Click事件处理代码如下:
Private
Sub
btnOk_Click(
ByVal
sender
As
System.
Object
,
ByVal
e
As
System.EventArgs)
Handles
btnOk.Click
myConfig.CreateXMLFiles = Me .chkBuildXML.Checked
myConfig.AddHistoryTags = Me .chkHistory.Checked
myConfig.InsertXMLComments = Me .chkInsertComments.Checked
myConfig.XMLCommentPrefix = Me .txtPrefix.Text. Trim
' 保存自定义用户名
' 实际上它被保存在注册表的下面的位置:
' [HKEY_CURRENT_USER\Software\PowerToys for Visual Studio .NET 2003\VBCommenter]
myConfig.HistoryUserName = Me .txtUserName.Text. Trim
End Sub
myConfig.CreateXMLFiles = Me .chkBuildXML.Checked
myConfig.AddHistoryTags = Me .chkHistory.Checked
myConfig.InsertXMLComments = Me .chkInsertComments.Checked
myConfig.XMLCommentPrefix = Me .txtPrefix.Text. Trim
' 保存自定义用户名
' 实际上它被保存在注册表的下面的位置:
' [HKEY_CURRENT_USER\Software\PowerToys for Visual Studio .NET 2003\VBCommenter]
myConfig.HistoryUserName = Me .txtUserName.Text. Trim
End Sub
5.以上都是辅助工作,最重要的是修改Template.VB中的下面这行代码:
sRes.Append(Environment.UserName)
修改成如下代码:
'
默认
' sRes.Append(Environment.UserName)
' 专用的话,只需使用下面这行
' sRes.Append("胡丹")
' 使用自定义的用户名
sRes.Append(Configuration.GetInstance().HistoryUserName)
' sRes.Append(Environment.UserName)
' 专用的话,只需使用下面这行
' sRes.Append("胡丹")
' 使用自定义的用户名
sRes.Append(Configuration.GetInstance().HistoryUserName)
6. 重新编译,重新安装就OK了!
听说VB2005中写这种注释不需要插件了,不知道是否支持自定义用户名?