PDA

View Full Version : Trouble with DefWindProc


carthorse
11 Oct 2007, 11:34
Has anyone expierenced the following?

Protected Overrides Sub DefWndProc(ByRef m As Message)
If m.Msg = WM_USER_SIMCONNECT Then
If Not BackgroundWorker1.IsBusy Then
BackgroundWorker1.RunWorkerAsync("Commnications Started")
End If
Else
MyBase.DefWndProc(m)
End If
End Sub

The above method is no longer being called...so i am unable to recieve messages from SimConnect.RecieveMessage(). I have simconnect running on another thread using the background worker. This has happened several times to me. I'm coding along and then at some point i noticed that i was no longer able to handle the OnRecvOpen event (and others). Unfortunately i don't seem to be sharp enough to figure out what is causing this to break.

thanks

carthorse
11 Oct 2007, 20:41
Problem Solved:

After some testing, it was not DefWindProc that was the problem. It was recieving system messages just fine. The problem was that i changed the Form.Text property from "Form1" to "something else". This broke the connect routine:

Dim Handle As IntPtr = CType(FindWindow(Nothing, "Form1"), IntPtr)
' open connection to FS
fsx_simconnect = New SimConnect("Failure Engine", Handle, WM_USER_SIMCONNECT, Nothing, 0)

There was never any error. The handle must have been a null pointer, but noe exception was ever returned from simconnect.

Hope this helps someone.