![]() |
Nachricht an alle Teilnehmer (DXPlay)
Hi,
ich hab ein Spiel fürs Netzwerk geschrieben und "DirectPlay" (DXPlay) verwendet. Die Nachrichtenübertragung klappt vom Client zum Server, umgekehrt jedoch nicht.
Delphi-Quellcode:
Was ist denn am Code falsch?
procedure TFSpiel.sende (ID : integer; Nachricht : String);
VAR ChatMsg: ^TDXChatMsg; i, MsgSize: Integer; dwType:DWORD; Len:WORD; Msg:ARRAY[0..0] OF Char; begin MsgSize :=SizeOF(TDXChatMsg)+Length(Nachricht); GetMem(ChatMsg, MsgSize); try with ChatMsg^ do begin dwType := DX_ChatMessage; Len := Length (Nachricht); StrLCopy(Msg, pChar(Nachricht), Length(Nachricht)); end; if ID = 0 then { Alle Teilnehmer } FSpiel.DXPlay1.SendMessage(DPID_AllPlayers, ChatMsg,MsgSize) else { Ein spezieller Teilnehmer } FSpiel.DXPlay1.SendMessage(ID, ChatMsg, MsgSize); finally FreeMem(ChatMsg); end; end; PS: Würdet ihr lieber die INDY-Komponenten nehmen? mfg devnull |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz