我想用delphi7做一个上位机监控程序,和下位机的物理接口为以太网,上位机为主动模式,下位机为被动模式,通讯协议已知,不知怎么做,原来没做过以太网通讯这方面的,望各位高手多多指点,最好详细点,谢谢!

解决方案 »

  1.   

    是TCP/IP还是UDP通讯啊TCP/IP的话,下位机作为服务器端(一般情况下下位机是24小时运行的),监控程序运行后主动连接下位机,可以使用ClientSocket控件,设置服务器端IP地址和端口号即可。连接成功后,通过控件的OnRead事件接收数据,然后通过sendtext或Sendbuffer发送数据
      

  2.   

    UDP的话,属于广播式通讯,只要知道网段地址(即IP地址的前3部分)、发送端口和接收端口即可
      

  3.   

    主动模式为client端,被动模式为server端。
    被动端一直监听数据,监听到数据后,根据协议处理,然后响应主动端的请求。典型的server/client网络通信。
      

  4.   

    控件,api都可!上位机跟一般开发网络区别不大!
      

  5.   

    我和你一样是做控制硬件的上位机软件的
    协议有了 就很好做
    你要确定几点
    1端口号,你通过以太网发到硬件的哪个端口,硬件给你回复信息回复到你电脑的哪个端口
    2发送方式,广播还是单播
    3使用哪个协议发送,tcp还是udp还是..我这边采用udp,我是用IdUDPClient这个控件广播方式发送数据,用IdUDPServer绑定端口监听数据