Mega Code Archive

 
Categories / C# Tutorial / Development
 

Application AddMessageFilter

using System; using System.Threading; using System.Windows.Forms;     public class BlockLeftMouseButtonMessageFilter : IMessageFilter {     const int WM_LBUTTONDOWN = 0x201;          public bool PreFilterMessage(ref Message m) {         if(m.Msg == WM_LBUTTONDOWN)         {             Exception LeftButtonDownException;                          LeftButtonDownException = new Exception("The left mouse button was pressed.");             Application.OnThreadException(LeftButtonDownException);             return true;         }         return false;     } }     public class ApplicationEventHandlerClass {     public void OnThreadException(object sender, ThreadExceptionEventArgs e)     {         Exception LeftButtonDownException;                  LeftButtonDownException = e.Exception;         Console.WriteLine(LeftButtonDownException.Message);     } }     public class MainForm : Form {     public static void Main()     {         ApplicationEventHandlerClass AppEvents = new ApplicationEventHandlerClass();         MainForm MyForm = new MainForm();         BlockLeftMouseButtonMessageFilter MsgFilter = new BlockLeftMouseButtonMessageFilter();             Application.AddMessageFilter(MsgFilter);         Application.ThreadException += new ThreadExceptionEventHandler(AppEvents.OnThreadException);         Application.Run(MyForm);     }         public MainForm()     {         Text = "Application Exception Test";     } }