salve a tutti in c# sto cercando di simulare una macchina medica, in pratica lei invia un ACK (un piccolo set di caratteri) al server per capire se è attivo e poi invia tutta l'elaborazione del paziente. ho provato a fare appunto un ACK ma sia un listener che ho fatto io in c# che un programma diterze parti, non cattura il dato
potete provare anche voi il mio codice?
ho provato come programma gratuito: Hercules, a cui lo metto in ascolto di una porta(qui UDP), ma anche lui se ne frega...assurdo...o non invio nulla o qualcosa va storto
grazie
codice:
static string enq = char.ConvertFromUtf32(5);
static string ack = char.ConvertFromUtf32(6);
string clientIP = "10.10.0.101";//dove inviare
int porta = 3005;//porta del server
private void button1_Click(object sender, EventArgs e)
{
UDPSocket c = new UDPSocket();
c.Client(clientIP, porta);
c.Send(ack);
}
public class UDPSocket
{
public void Client(string address, int port)
{
_socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
_socket.Connect(IPAddress.Parse(address), port);
//Receive();
}
public void Send(string text)
{
try
{
byte[] data = Encoding.ASCII.GetBytes(text);
_socket.BeginSend(data, 0, data.Length, SocketFlags.None, (ar) =>
{
State so = (State)ar.AsyncState;
int bytes = _socket.EndSend(ar);
Console.WriteLine("SEND: {0}, {1}", bytes, text);
}, state);
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show(ex.Message);
}
}
}