日期:2014-05-17  浏览次数:20930 次

c# 网络服务器编程疑问,异常问题

图1


图2
问题1:
  每次我运行是按下监听按钮时,图2 界面显示老是会卡在那里,我知道是可能是在监听时的那个while 循环那里问题,请问怎么解决?

问题2 :
每次我按下停止监听按钮时,老是会显示图2 所是的异常错误,请问需要怎么解决啊!

PS: 都23:37 了还在敲代码,苦逼啊!
直接代码吧
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace 红相表测试
{
    public partial class Form1 : Form
    {
        public Socket client = null;
        public string str;
        public Thread t1;
        bool flag = false;
        public string StringToHex(string str)
        {
            //str = str.Trim();
            byte[] ByteFoo = System.Text.Encoding.Default.GetBytes(str);
            string TempStr = "";
            foreach (byte b in ByteFoo)
            {
                if (b <= 16)  //16进制显示时加个0
                {   
                    TempStr += "0"+b.ToString("X") + " "; //X表示十六进制显示
                }
                else
                    TempStr += b.ToString("X") + " "; //X表示十六进制显示
            }
            return TempStr;