Thursday, April 14, 2005
Centralized Exception handling in Windows Forms :
can we really have a centralized exception management in windows forms apps ?
we always hear this :
1- i need a procedure to be triggered whenever any error in the applciation is fired (may be just to log and trace) without writing try and catch blocks.
in VB.NET :
shared sub main()
AddHandler
end sub
Sub s1(ByVal sender As Object, ByVal e As Threading.ThreadExceptionEventArgs)
MessageBox.Show("Centralized Exception trapping")
End Sub
in C#.NET :
static void main()
{
Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);
}
private static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
{
MessageBox.Show("Centralized Exception trapping");
}
Tuesday, April 05, 2005
Compile of VB Imports vs. C# using
let's look at this Console App written in VB .
Imports
System.DataImports System.Windows.Forms
Class
class1Shared Sub Main()
Console.Writeline("Welcome")
End Sub
End Class
open the ConsoleApplication1.exe with ILDASM and have a look in manifest . UNFORTUNATELY vb compiler generated IL still references the system.data although it is not used in our app .
FORTUNATELY This is not the case in C#. try the same thing in C# , we find that C# compiler is smart enough to remove the unreferenced dlls from IL .
a point to C# against VB :-)