vbCodeShield Error handling walkthrough
What the user will see
If your project should encounter an unexpected run-time error, the situation
without a specific error handler is pretty grim:
The dialog above is all the information Visual Basic will give
your users about the problem that has just occured. Not only does it make
identifying the fault difficult, it presents a poor impression to the users of
your software.
If you have used vbCodeShield with your project, the outlook is a great deal
brighter. They will see the following dialog for the same error as above:

Not only is the dialog more informative, the user now has options. If
you support it as the software producer, and they choose to, they can go on-line
to your support site to diagnose the problem. If the user decides to go on-line and diagnose the problem, they will
prompted to supply some information about themselves and some basic information
about the actions that led to the problem:

After which the connection to the support web server will be made and error
information obtained. An example diagnosis summary showing a problem as
yet unresolved looks as follows:

So, even if no other users have encountered this unexpected error before,
within a few seconds the user knows that they have reported this issue fully,
and are able to request notification when the problem is resolved. This
may not resolve the actual issue, but will provide a feeling that something is
being done about it and gives a user friendly interface to the error reporting
process not usually found in even the most popular commercial software products.
Even better than the situation above, you may have already resolved the issue
they are encountering and in which case they would be shown the following
dialog:

From the summary, the user can obtain detailed resolution information (if
available) and a fix (if available) just by clicking on the hyperlinks.
Imagine, within a few minutes of encountering a problem, the user can have fixed
it and moved on, improving their impression of you as a company or individual
and increasing their confidence in the software product.
Click here to see a sample knowledge base
arcticle produced when the user clicks 'View the knowledge base article for this
error'.
The error diagnosis information is cached locally, so that the user does not
have to re-connect if the problem recurrs (although they can refresh if they
wish and are prompted to do so if a significant period of time has elapsed since
the original diagnosis was obtained).