NeoGriever: VB.NET ... (user32 API) PostMessage - Cache leeren?

Beitrag lesen

Ich habe den Ursprung des Fehlers entdeckt.

Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
        Select Case m.Msg
            Case &H400
                Communicate.BuildString(m.LParam)
            Case Else
                MyBase.WndProc(m)
        End Select
    End Sub

Dort wird zwar die Message abgearbeitet (ausgelesen und umgewandelt sowie auf ein RaiseEvent gejagt), jedoch wird dem System (da es ja eine ByRef ... also eine Referenz ist) nicht mitgeteilt, dass die Nachricht auch abgefertigt wurde. Dies erreiche ich mit ...

m.Result = New IntPtr(1)

direkt VOR Communicate.BuildString(m.LParam)

PS: Communicate ist direkt die Klasse, die im eröffnungspost verlinkt war. Zwar nicht exakt identisch (Threading wurde entfernt), aber funktioniert zu 100% ^^