CoderHelper 是怎样实现添加模块信息以及函数说明信息的?
首先,你需要知道,本程序的基本思路!在添加时本程序模仿了ini的读写方式.也救生步说在代码中先定好字段位置,如:"'********************版权信息********************" 就是一个字段.接着,以字段的基础上定位键的位置.那么"'*隶属工程:"就时一个键 后面的字符就时键的值.然后,只要编写好怎样定位.那么.就很简单了!下面是其调用模块中的代码.以下代码实现了向模块中添加信息.而操作代码窗口中的代码的代码将是我所给你的代码:
'********************版权信息********************
'*隶属工程: CoderHelper
'*模块名称: modMark
'*模块描述:
'*成员个数: 2
'*代码行数: 67
'*声明行数: 14
'*创建时间: 2005-8-10 19:24:05(创建人:MysticBoy)
'*修改时间: 2005-8-10 19:37:33(修改人:MysticBoy)
'*代码说明:
'*版权说明: 版权所有(c) ?-2005 Mysticsoft.
'* 保留所有权
'***********************************************
Option Explicit
Public Sub SetCopyRightInfs(ObjVBC As VBComponent)
Dim lc As Long
On Error Resume Next
Dim tmp1x As String
With pjtMark
.ObjVBComponent = ObjVBC
lc = .FindMark("版权信息")
If frmAddIn.cbsALSGC.Value = 1 Then .WriteKey "版权信息", "隶属工程:", MVBI.ActiveVBProject.Name, lc, 1
If frmAddIn.cbsAMKM.Value Then .WriteKey "版权信息", "模块名称:", ObjVBC.Name, lc, 2
tmp1x = .ReadKey("版权信息", "模块描述:", lc)
If tmp1x = "" Then
If frmAddIn.cbsAMKMS.Value = 1 Then .WriteKey "版权信息", "模块描述:", ObjVBC.Description, lc, 3
Else
ObjVBC.Description = tmp1x
If frmAddIn.cbsAMKMS.Value = 1 Then .WriteKey "版权信息", "模块描述:", ObjVBC.Description, lc, 3
End If
If frmAddIn.cbsDMHS.Value = 1 Then
.WriteKey "版权信息", "成员个数:", CStr(ObjVBC.CodeModule.Members.Count), lc, 4
.WriteKey "版权信息", "代码行数:", CStr(ObjVBC.CodeModule.CountOfLines), lc, 5
.WriteKey "版权信息", "声明行数:", CStr(ObjVBC.CodeModule.CountOfDeclarationLines), lc, 6
End If
If .ReadKey("版权信息", "创建时间:", lc) = "" Then
.WriteKey "版权信息", "创建时间:", CStr(Now) + "(创建人:" + UserName + ")", lc, 7
End If
.WriteKey "版权信息", "修改时间:", CStr(Now) + "(修改人:" + UserName + ")", lc, 8
If frmAddIn.cbsADMSM.Value = 1 Then
If .ReadKey("版权信息", "代码说明:", lc) = "" Then
.WriteKey "版权信息", "代码说明:", "", lc, 9
End If
End If
Dim tmptxt As String
tmptxt = frmAddIn.txtABQSM.Text
tmptxt = Replace(tmptxt, "%YEAR", CStr(Year(Now)))
tmptxt = Replace(tmptxt, "&COMPANY", GetCompanyName)
.WriteKey "版权信息", "版权说明:", tmptxt, lc, 10
.WriteKey "版权信息", " 保留所有权 ", "", lc, 11
.WriteKey "版权信息", "**********************************************", "", lc, 12
If frmAddIn.cbsDMHS.Value = 1 Then
.WriteKey "版权信息", "成员个数:", CStr(ObjVBC.CodeModule.Members.Count), lc, 4
.WriteKey "版权信息", "代码行数:", CStr(ObjVBC.CodeModule.CountOfLines), lc, 5
.WriteKey "版权信息", "声明行数:", CStr(ObjVBC.CodeModule.CountOfDeclarationLines), lc, 6
End If
WriteLine "[" + ObjVBC.Name + "]的版权信息已编辑!" + IIf(err.Number <> 0, vbNewLine + "伴随错误:" & err.Number & err.Description + vbNewLine, "") & Now
End With
End Sub
Sub SetCopyrightinfToPjt(Pjt As VBProject)
Dim n As Long
For n = 1 To Pjt.VBComponents.Count
SetCopyRightInfs Pjt.VBComponents(n)
DoEvents
Next n
WriteLine "[" + Pjt.Name + "]内的" & n & "个代码模块版权信息被编辑!" & Now
End Sub
以下代码实现了在一个代码窗口中添加其方法的说明信息.