Search Tools Links Login

Add Error log to your projects - no changing code!

This is a drop in replacement for the VB Message box routine (MsgBox). It will log to a file all messages that you display to the user that are marked with vbCritical. This routine also expands the standard VB Messagebox by giving you the developer the ability to log to file, even if you don't set vbCritical.

Original Author: Jason Monroe


Same as MsgBox


Insert this code into a module, will not work properly if placed in a class


Same as MsgBox


Public Function MsgBox(Prompt As String, Optional Buttons As VbMsgBoxStyle = vbOKOnly, Optional Title As String, Optional HelpFile As String, Optional Context As Single, Optional LogToFile As Boolean = False) As VbMsgBoxResult
Dim strErrorLog As String
Dim iFileHandle As Integer
Dim strErrorTitle As String
Dim iResult As Integer

iFileHandle = FreeFile
strErrorTitle = App.EXEName & " : " & Title
strErrorLog = App.Path & "" & App.EXEName & ".log"
' Force error loging on all critical messages
If (Buttons And vbCritical) Then
LogToFile = True
End If
' if the user has choosen to log, or it's a critical message, log it
If LogToFile = True Then
Open strErrorLog For Append As #iFileHandle
Print #iFileHandle, Now, Prompt
Close #iFileHandle
End If
' Call the real message box routine
iResult = VBA.MsgBox(Prompt, Buttons, strErrorTitle, HelpFile, Context)
MsgBox = iResult
End Function

About this post

Posted: 2002-06-01
By: ArchiveBot
Viewed: 110 times


Visual Basic 6


No attachments for this post

Loading Comments ...


No comments have been added for this post.

You must be logged in to make a comment.