DirectPlay - wie Messages unterscheiden ?
-
Hallo meine lieben,
Meine heutige Frage ist, wie man ind DP8 am einfachsten ein Message-Handling für
unterschiedliche Arten von Messages hinbekommt. Im MessageHandler kann ich auf DPN_MSGID_RECEIVE: reagieren, wie kann ich aber z.B. eine Chatnachricht von einer
Nachricht, die Positionsdaten übermittelt, unterscheiden?
Im struct _DPNMSG_RECEIVE, dass mit dieser Nachricht ankommt ist leider kein
Platz für eine ID, nach der ich die Messages unterscheiden könnte.
Oder dient dazu etwa der pvPlayerContext-Zeiger?
Meine Lösung wäre einfach zwei DPN_BUFFER_DESC-structs in IDirectPlay8Peer::SendTo
zu verschicken, das erste mit einer MsgID als Datum. Erscheint mir aber
ganz schön holprig, diese Lösung.
Kennt jemand von Euch dieses Problem ?
Euer für einen kurzen Tipp wie immer ewig dankbarerBiff
-
Wie wäre es, wenn du mal in die Samples schaust? Oder was haste gegen die Methode dort? Ich kenn nix anderes.
Bye, TGGC \-/
-
Leider beschränken die Tutuorials aus dem SDK sich auf das
übermitteln von Chatnachrichten, die Daten aus
PDPNMSG_RECEIVE->pReceiveData werden einfach in einen
String gepackt und fertsch.
Was mir an meiner Methode nicht gefällt:
Ich bekomme alle mit SendTo verschickten DPN_BUFFER_DESC-structs
in einem PDPNMSG_RECEIVE - struct, muss dieses nach
DPN_MSGID_RECEIVE erst einmal aufdröseln.
Erfahrungsgemäß passieren dabei häufig Fehler.
Schön wärs, wenn man User-definierte Nachrichten hätte.
Danke trotzdem,Biff
-
Bei mir nicht. Sowohl DX8SDK, DX9SDK und DX9SDK Summer update.
Bye, TGGC \-/