Err.HelpContext Property |
Microsoft.VisualBasic.ErrObject
Err.HelpContext
A read/write property that either sets or returns an Integer value containing the context ID of the appropriate topic within a Help file.
The Err object sets the HelpContext property automatically when an error is raised if Err.Number is a standard VB.NET error.
If the error is user -defined and you don't explicitly set the HelpContext property yourself, the Err object will set the value to 1000095, which corresponds to the "Application-defined or object-defined error" help topic in the VB Help file. (The HelpContext property is set by the fifth parameter to the Err.Raise method.)
HelpContext IDs are decided upon when writing and creating a Windows Help file. Once the Help file has been compiled, the IDs cannot be changed. Each ID points to a separate Help topic.
Sub TestErr( ) On Error GoTo TestErr_Err Dim i i = 8 MsgBox(i / 0) TestErr_Exit: Exit Sub TestErr_Err: MsgBox(Err.Description, vbMsgBoxHelpButton, "ErrorVille", _ Err.HelpFile, Err.HelpContext) Resume TestErr_Exit End Sub
You can display a topic from the Visual Basic Help file by using the MsgBox function with the vbMsgBoxHelpButton constant and passing Err.HelpContext as the HelpContext argument (as shown in the previous example). While this is a simple and very effective way to add much more functionality to your applications, bear in mind that some of your users could find the explanations within the VB Help file somewhat confusing. If time and budget allow, the best method is to create your own help file (for which you will need the Help compiler and other Help file resources from the full version of VB) and to pass both the HelpContext and HelpFileName to MsgBox .
Some objects that you may use within your application have their own help files, which you can access using HelpContext to display highly focused help to your users.
Err.HelpFile Property, Err.Number Property, Err.Source Property