This feauture enables to use "Try" exception handling in VB programs like VB.net Try-Catch statement. http://sites.google.com/site/truetryforvisualbasic/
I think it's a new way of exception handling in VB 4,5,6, VBA and VBScript.
I'm waiting for opinions.
PrivateSub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
Catch ex As Exception
Finally
End Try
EndSub
End Class
and while some may think it would be nice to have such error handling in vb6, one can achieve the same with standard vb6 error handling if one thinks about it.
Good Luck
Last edited by vb5prgrmr; Oct 27th, 2009 at 9:39 am.
My post was sent for the old VB 4,5,6 and not for VB.net.
I know the syntax of VB.net Try-Catch statement of course and I wrote that my way similar not same.
But it can achieve the almost same essentially.
I realy tell the VB compiler to ignore errors between 'On Error Resume Next' and 'On Error Goto label'.
Do You know other or better way in old VB, VBA, VBScript?
May I ask You, what code do You use for structured exception handling in VB?
Last edited by RobEin; Oct 27th, 2009 at 11:59 am.
This way I know where, #, and description while designing. Once I have finished the code and test the application and know where and what errors might occur, I adjust the code to a more defensive posture.
An example of this might be installing a dir check for a file to see if it exists before trying any type of file operation.
Then there are some errors that just cannot be accounted for like doing a recursive dir search on a hard drive from the root and the dir function coming across a *.sys file and an example on how I get around that can be found here...
So, if you can see that example the code is not "do this, do that, do the other". It is more like "If I can do this then do it else try to do something else" and so on.
The finally feature is optional and not required to catch an expected exception (Finally does not exist in C++, for example.).
But it's a possible solution for Finally in VB-Try-Catch:
With New Try: On Error Resume Next
Debug.Print 1 / 0 'Division by zero
.Catch: On Error GoTo 0: Select Case .Number
Case 11
MsgBox "Division by zero error."
Case Else
MsgBox Err.Description
End Select
[...Finally-code...]
End With
The difference between VB-Try-Finally and other langugage Try-Finally:
If Exit Sub-Function-Property is used in Select-Case statement, the "Finally" section will not be executed.
There may be similarly problems even with Exit For-Do or GoTo or Return statements.
No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Previous Thread in Visual Basic 4 / 5 / 6 Forum Timeline:Need Some Help :)