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

c# udp发送控制指令
我现在有一个串口采集的程序,是c#的,我现在想做一个程序,通过udp发送指令来控制这个采集的程序,我现在的思路是在这个采集程序里加一个监听端口的线程,请问该怎么加呢,另外就是怎么控制这个程序里的函数,比如最简单的,控制按钮的点击,最后实现的就是有两个程序,在新做的程序里点开始,然后这个采集的程序开始采集,点击结束就停止采集。谢谢各位大侠给点思路

------解决方案--------------------
先学习UDP编程  
参见
http://www.cnblogs.com/xiaozhi_5638/p/3169641.html
------解决方案--------------------
思路就是:利用多线程循环侦听某个端口以防止界面阻塞,当接收到消息之后根据消息的指令来做相应处理

public class SocketListener
{
    public event DltMessage EvtMessageReceived;// 接收到消息后事件
    private Thread work = null;
    private Socket socket = null;
    private int port = 11111;
        /// <summary>
        /// 开始监听
        /// </summary>
        public void StartListen()
        {
            work = new Thread(new ThreadStart(Start));
            work.IsBackground = true;
            work.Start();
        }
        public void Start()
        {
           try
            {
                IPEndPoint remoteEP = new IPEndPoint(IPAddress.Any, port);
                using (receiveClient = new UdpClient(remoteEP))
                {
                    while (true)
                    {