mirror of
https://e.coding.net/circlecloud/CTZLauncher.git
synced 2024-11-14 00:48:48 +00:00
45 lines
1.8 KiB
C#
45 lines
1.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Net.Sockets;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace MinecraftServerInfo
|
|
{
|
|
class Program
|
|
{
|
|
static void Main(string[] args)
|
|
{
|
|
using (Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp))
|
|
try
|
|
{
|
|
client.Connect("play.i5mc.com", 25565);
|
|
Console.WriteLine("开始连接");
|
|
if (client.Connected)
|
|
{
|
|
Console.WriteLine("发送数据");
|
|
client.Send(new byte[] { 0x0F, 0x00, 0x04, 0x09, 0x31, 0x32, 0x37, 0x2E, 0x30, 0x2E, 0x30, 0x2E, 0x31, 0x63, 0xDD, 0x01 });
|
|
client.Send(new byte[] { 0x01, 0x00 });
|
|
Console.WriteLine("读取头数据");
|
|
byte[] header = new byte[5];
|
|
client.Receive(header, header.Length, SocketFlags.None);
|
|
Console.WriteLine(BitConverter.ToString(header));
|
|
byte[] buffer = new byte[1024];
|
|
int recover = client.Receive(buffer, buffer.Length, SocketFlags.None);
|
|
byte[] data = new byte[recover];
|
|
Console.WriteLine("数据流长度: " + recover);
|
|
Array.Copy(buffer, data, recover);
|
|
Console.WriteLine(BitConverter.ToString(data));
|
|
Console.WriteLine(Encoding.UTF8.GetString(data));
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
Console.ReadLine();
|
|
}
|
|
}
|
|
}
|