All pastes #932631 Raw Edit

Untitled

public text v1 · immutable
·published 2008-03-07 21:27 UTC
rendered paste body
        void QueryServer( object data )
        {
            string Server; int Port;
            Server = textBox1.Text;
            Port = Convert.ToInt32( textBox2.Text );

            UdpClient c = new UdpClient( );
            c.Connect( Server, Port );

            byte[ ] bytes = { 0xFF, 0xFF, 0xFF, 0xFF, 0x54, 0x53, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x20, 0x45, 0x6E, 0x67, 0x69, 0x6E, 0x65, 0x20, 0x51, 0x75, 0x65, 0x72, 0x79, 0x00 };
            c.Send( bytes, bytes.Length );

            IPEndPoint ip = new IPEndPoint( IPAddress.Any, 0 );
            byte[ ] recv = c.Receive( ref ip );

            string recvStr = Encoding.ASCII.GetString( recv ).Remove( 0, 6 );
            string[ ] tmp = recvStr.Split( '\0' );
            int len = 0;
            for ( int i = 0; i < 6; i++ )
            {
                len += tmp[ i ].Length;
            }
            len += 6;

            string hostname = tmp[ 0 ];
            string map = tmp[ 1 ];
            string game = tmp[ 3 ];

            string players = recv[ len ].ToString( );
            string maxplayers = recv[ len + 1 ].ToString( );

            c.Close( );

            MessageBox.Show( hostname + " " + map + " " + game + " " + players + " " + maxplayers );
        }