新聞中心
請教高手,如何用vb實(shí)現(xiàn)“使用日志”?
很多種方法,最常用的一是用文本文件或數(shù)據(jù)庫記錄,二是調(diào)用API函數(shù)直接寫入系統(tǒng)日志或應(yīng)用程序日志
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供自流井網(wǎng)站建設(shè)、自流井做網(wǎng)站、自流井網(wǎng)站設(shè)計、自流井網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、自流井企業(yè)網(wǎng)站模板建站服務(wù),十余年自流井做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
在vb點(diǎn)虐 中,記錄系統(tǒng)錯誤日志這個功能怎么實(shí)現(xiàn)
Public Sub ShowError(strModule As String, strProcedure As String, lngErrorNumber As Long, strErrorDescription As String, showMsg As String)
'
'錯誤處理中心過程,寫數(shù)據(jù)庫日志表或?qū)懭罩疚募?/p>
'
'strModule '模塊名稱
'strProcedure '過程名稱
'lngErrorNumber '錯誤ID號
'strErrorDescription '錯誤描述
'showMsg '是否顯示本過程內(nèi)錯誤顯示信息(值:"Y" or "N")
'Error表結(jié)構(gòu)(f001 (Date)發(fā)生時間, f002 (nvarchar50)模塊名稱, f003 (nvarchar50)過程名稱, f004 (nvarchar50)錯誤ID號, _
f005 (nvarchar300)錯誤描述,f006 (nvarchar50)版 本 號, f007 (nvarchar50)用戶名稱, f008 (nvarchar50)網(wǎng)卡地址
'ErrorCode表結(jié)構(gòu) f001 (nvarchar20)錯誤代碼, f002 (nvarchar255)錯誤信息, f003 (numeric9)錯誤級別
' 級別說明: '10'以下,一般錯誤,不影響操作
' '11-20',嚴(yán)重錯誤,不能操作,程序執(zhí)行退出
On Error GoTo ErrorHandle
Dim strMessage As String
Dim strCaption As String
Dim sVer As String
Dim intLogFile As Integer
Dim Res As New ADODB.Recordset
Dim ResErrorCode As New ADODB.Recordset
Dim strSQL As String
'對應(yīng)錯誤號,從ErrorCode表中找到對應(yīng)的錯誤信息,0-1000 錯誤號保留給VB
DBOpen ResErrorCode, "select * from errorcode where f001='" lngErrorNumber "'"
If Not (ResErrorCode.EOF Or ResErrorCode.BOF) Then
strMessage = ResErrorCode.Fields("f002")
If ResErrorCode.Fields("f003") 10 Then
MsgBox "產(chǎn)生一個嚴(yán)重錯誤,可能影響到系統(tǒng)的可操作性,請立即聯(lián)系本系統(tǒng)開發(fā)人員!", vbCritical, "嚴(yán)重錯誤"
End If
End If
'寫錯誤入文件----------------------------
intLogFile = FreeFile
Open App.Path "\" strIni.LogFile For Append As #intLogFile
Print #intLogFile, "***錯誤"; VBA.Now "*** " "Version:" _
str$(App.Major) "." str$(App.Minor) "." Format(App.Revision, "0000")
Print #intLogFile, "Error: " lngErrorNumber
Print #intLogFile, "Description: " strErrorDescription
Print #intLogFile, "Module: " strModule
Print #intLogFile, "Procedure: " strProcedure
Print #intLogFile, ""
Close #intLogFile
If Len(strMessage) 2 Then strErrorDescription = strMessage
strMessage = "錯誤: " "(" lngErrorNumber ")" strErrorDescription vbCrLf vbCrLf _
"模塊:" strModule "; 過程:" strProcedure
sVer = Trim(str$(App.Major) "." str$(App.Minor) "." _
Format(App.Revision, "0000"))
strCaption = "錯誤 Version: " sVer
'寫錯誤入數(shù)據(jù)庫表--------------------------
strSQL = "insert into error(f001,f002,f003,f004,f005,f006,f007,f008) values(" _
DateFmtB VBA.Now DateFmtE "," _
IIf(Len(Trim(strModule)) = 0, "null", "'" strModule "'") "," _
IIf(Len(Trim(strProcedure)) = 0, "null", "'" strProcedure "'") "," _
IIf(Len(Trim(lngErrorNumber)) = 0, "null", "'" lngErrorNumber "'") "," _
IIf(Len(Trim(strErrorDescription)) = 0, "null", "'" Replace(strErrorDescription, "'", "") "'") "," _
IIf(Len(Trim(sVer)) = 0, "null", "'" sVer "'") "," _
IIf(Len(Trim(sUserName)) = 0, "null", "'" sUserName "'") "," _
IIf(Len(Trim(sVer)) = 0, "null", "'" EthernetNO "'") ")"
Cn.Execute strSQL
'是否顯示未知錯誤信息
If Trim(UCase(showMsg)) = "Y" Then MsgBox strMessage, vbCritical, strCaption
PROC_EXIT:
Set Res = Nothing
Set ResErrorCode = Nothing
Exit Sub
ErrorHandle:
Resume Next
關(guān)于VB編程
首先,二者所使用的軟件不一樣,Visual Basic 6使用的是Visual Studio 6.0環(huán)境;Visual Basic.NET使用的是Visual Basic.NET 2003/2005環(huán)境。
Visual Basic.NET與早期VB程序設(shè)計語言的主要區(qū)別在于以下五個方面:
1. Visual Basic.NET支持微軟最新推出的ADO.NET和ActiveX Data Objects(ADO)功能。程序員可以通過ADO把基于XML的數(shù)據(jù)綁定到數(shù)據(jù)庫、類、集合,以及數(shù)組中使用。
2. Visual Basic.NET首次全面支持面向?qū)ο蟮某绦蚪Y(jié)構(gòu),允許程序員創(chuàng)建組件化的可復(fù)用代碼資源。Visual Basic.NET不僅支持對象的繼承、封裝、多態(tài)性等對象特征,而且還允許開發(fā)人員在程序中構(gòu)造可運(yùn)行在各類操作系統(tǒng)平臺上的XML Web服務(wù)。
3. Visual Basic.NET新增的調(diào)試和跟蹤功能允許應(yīng)用程序直接訪問操作系統(tǒng)的注冊表、事件日志、性能計數(shù)器和文件系統(tǒng)等系統(tǒng)資源。
4. Visual Basic.NET在安全方面為程序員提供了強(qiáng)有力的工具。借助于對微軟.NET架構(gòu)的直接訪問,程序員可以通過.NET架構(gòu)提供的多種安全模式對其應(yīng)用實(shí)現(xiàn)各種粒度的安全控制。
5. 借助于Visual Basic.NET提供的移動設(shè)備互聯(lián)工具,程序員可以針對80種以上的移動設(shè)備開發(fā)各種無線應(yīng)用。
文章標(biāo)題:vb點(diǎn)虐 事件日志的簡單介紹
文章位置:http://www.dlmjj.cn/article/ddedgoh.html