//UDP CLIENT
private void ConnectUdp()
{
IPAddress serverIP = IPAddress.Parse("127.0.0.1");
int serverPort = 8081;
int localPort = 8080; // Port for receiving messages
// Initialize and bind the UDP client
_udpClient2 = new UdpClient(serverPort); // Bind to local port
_udpClient2.Connect(serverIP, serverPort); // Connect to the server
_udpclientConnected = true; // Set the connected flag
AppendToReceivedMessages("Connected to server."); // Display connection message
// Start receiving messages continuously
Task.Run(() => ReceiveMessages());
}
private async Task ReceiveMessages()
{
try
{
// Continuously listen for messages
while (_udpclientConnected) // Check if still connected
{
byte[] buffer = new byte[1024]; // Buffer to hold the incoming data
IPEndPoint remoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0); // Local port is already bound
// Receive messages asynchronously
var receiveBytes = await _udpClient2.ReceiveAsync();
// Pass the received data to your message handler
_udpClient_MessageReceived(receiveBytes.Buffer);
}
}
catch (Exception ex)
{
AppendToReceivedMessages($"Error receiving data: {ex.Message}");
}
}
private void _udpClient_MessageReceived(byte[] bytes)
{
// Convert the received byte array to a string
string receivedMessage = Encoding.ASCII.GetString(bytes);
// Update the TextBox with the received message
AppendToReceivedMessages(receivedMessage);
}
Я хочу получить сообщение с сервера и распечатать его в текстовом поле1. но он нажимает «var takeBytes = await _udpClient2.ReceiveAsync();
» на эту строку, но после этого он не нажимает после этих строк. поэтому он ничего не печатает в textbox1. пожалуйста, проверьте это.
[code]//UDP CLIENT private void ConnectUdp() { IPAddress serverIP = IPAddress.Parse("127.0.0.1"); int serverPort = 8081; int localPort = 8080; // Port for receiving messages
// Initialize and bind the UDP client _udpClient2 = new UdpClient(serverPort); // Bind to local port _udpClient2.Connect(serverIP, serverPort); // Connect to the server
_udpclientConnected = true; // Set the connected flag AppendToReceivedMessages("Connected to server."); // Display connection message
private async Task ReceiveMessages() { try { // Continuously listen for messages while (_udpclientConnected) // Check if still connected { byte[] buffer = new byte[1024]; // Buffer to hold the incoming data
IPEndPoint remoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0); // Local port is already bound
// Receive messages asynchronously var receiveBytes = await _udpClient2.ReceiveAsync();
// Pass the received data to your message handler _udpClient_MessageReceived(receiveBytes.Buffer); } } catch (Exception ex) { AppendToReceivedMessages($"Error receiving data: {ex.Message}"); } }
private void _udpClient_MessageReceived(byte[] bytes) { // Convert the received byte array to a string string receivedMessage = Encoding.ASCII.GetString(bytes);
// Update the TextBox with the received message AppendToReceivedMessages(receivedMessage); } [/code] Я хочу получить сообщение с сервера и распечатать его в текстовом поле1. но он нажимает «var takeBytes = await _udpClient2.ReceiveAsync(); » на эту строку, но после этого он не нажимает после этих строк. поэтому он ничего не печатает в textbox1. пожалуйста, проверьте это.
У меня есть базовый класс со статическим элементом и не статичной функцией, которая возвращает значение указанного статического члена. У меня также есть полученный класс, который наследует базовый класс, но присваивает альтернативное значение...
Я создаю руль, чтобы играть в игры F1 Codemasters.
В этих играх есть возможность отправлять телеметрию через UDP.
https:/ /answers.ea.com/t5/General-Discussion/F1-23-UDP-Specification/td-p/12632888