Ik ben bezig een tracker te schrijven in C#
Nou heb ik een commando opgestuurd naar de server en krijg hiervan response in de vorm van UDP pakketjes
hier is de opzet van de connectie
Omdat de data die teruggestuurd is niet in 1 paket past, moet ik eigelijk nog meer pakketjes ontvangen, alleen ik weet niet hoe ik dat moet aanpakken (misschien moet ik dat vragen aan de server maar daar heb ik geen verdere informatie over gevonden het is een Battlefield1942 server)
Als ik nog een keer het receive commando uitvoer dan krijg ik precies dezelfde data terug.
Heeft iemand misschien een tip
Nou heb ik een commando opgestuurd naar de server en krijg hiervan response in de vorm van UDP pakketjes
hier is de opzet van de connectie
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| IPEndPoint OneIp= new IPEndPoint( IPAddress.Parse("***.***.***.***")
,23000);
Socket mysocket= new Socket( OneIp.Address.AddressFamily,
SocketType.Dgram,ProtocolType.Udp);
mysocket.SetSocketOption(SocketOptionLevel.Socket,
SocketOptionName.ReceiveTimeout, 1000);
byte[] query= Encoding.ASCII.GetBytes("\\players\\");
mysocket.SendTo( query, query.Length, SocketFlags.None, OneIp);
IPEndPoint SomeSender= new IPEndPoint(IPAddress.Any, 0);
EndPoint tmpRemoteEP= (EndPoint)SomeSender;
byte[] buffer= new byte[1500];
string s;
mysocket.Receive(buffer);
s = Encoding.ASCII.GetString(buffer, 0, buffer.Length); |
Omdat de data die teruggestuurd is niet in 1 paket past, moet ik eigelijk nog meer pakketjes ontvangen, alleen ik weet niet hoe ik dat moet aanpakken (misschien moet ik dat vragen aan de server maar daar heb ik geen verdere informatie over gevonden het is een Battlefield1942 server)
Als ik nog een keer het receive commando uitvoer dan krijg ik precies dezelfde data terug.
Heeft iemand misschien een tip
[ Voor 4% gewijzigd door dominion99 op 28-08-2003 17:26 ]