-1
public partial class Form1 : Form
{
    private void button1_Click(object sender, EventArgs e)
    {
        String text = textBox1.Text;
        UdpClient udpc = new UdpClient(text,8899);
        IPEndPoint ep = null;

        while (true)
        {
            MessageBox.Show("Name: ");
            string name = "Connected";
            if (name == "") break;
            byte[] sdata = Encoding.ASCII.GetBytes(name);
            udpc.Send(sdata, sdata.Length);

            if (udpc.Receive(ref ep)==null)
            {
               MessageBox.Show("Host not found");               
            }
            else
            {                
                byte[] rdata = udpc.Receive(ref ep);
                string job = Encoding.ASCII.GetString(rdata);
                MessageBox.Show(job);
            }               
        }
    }

リモート マシンが接続されていないときにエラー メッセージが表示されます。このコードではエラーが発生します。

if (udpc.Receive(ref ep)==null) 

エラー メッセージは socket exception was unhanded (既存の接続がリモート ホストによって強制的に閉じられました) です。

4

3 に答える 3