Hallo Community,
ich befasse mich gerade mit der SendMessage API Funktion - Ziel ist es, Daten zwischen zwei Programmen auszutauschen. Wenn diese Daten ein String oder Integer o.ä. sind, ist das ganze offenbar recht einfach, das funktionierte auf Anhieb.
Allerdings müssten in meinem Fall benutzerdefinierte Typen (Klassen) übertragen werden - und zwar Klassen, deren Aufbau/Definition ich nicht verändern kann (die sind so vorgegeben, wie sie eben sind).
Das Senden an sich stellt auch kein Problem dar, allerdings bekomme ich es nicht hin, beim Empfang den LPARAM Teil der Nachricht wieder von einem IntPtr in besagte Klasse(n) umzuwandeln. Eine dieser Klassen heißt StockHistoryType, welche ich hier im Beispiel verwenden werde.
Definition:
Private Declare Auto Function SendMessage Lib „user32“ (ByVal hWnd As IntPtr, _
ByVal wMsg As Integer, _
ByVal wParam As Integer, _
ByVal lParam As StockHistoryType) As Boolean
Senden:
SendMessage(hWnd, Msg, 1, Data)
Empfangen:
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
Dim MsgData as StockHistoryType
’ m.LParam -> MsgData ???
End Sub
Für Hilfe wäre ich echt dankbar, ich habe mich schon halb totgegoogled