求一个delphi编写的通过网络发送指令控制下位机的程序实例,网上实在是找不到有关的学习资料。

如题所述

控件一直用delphi7 自带的TserverSocket 和TclientSocket控件
发送和接收都很简单
至于如何控制,这个就涉及通讯的规约问题。
你自己定义好了 每个应用都不一样的。追问

那上位机软件只用一个TserverSocket控件发指令就可以了吗?

追答

自然可以了

ServerSocket1 一般是被动的。那就可以在onClientread事件里 写处理消息的代码
然后 用 Socket.SendText() 或Socket.SendBuf() 发送

如果想群发 那你可以

for i:=0 to ServerSocket1.Socket.ActiveConnections-1 do
begin
ServerSocket1.Socket.Connections[i].SendText('hello');
end;

如果想只发给一个客户端 那你就得自己标记一下哪个socket对对应哪个设备的
可以在 ClientConnect事件里 标记socket的 data数据
也可以用ip地址区分来源

for i:=0 to ServerSocket1.Socket.ActiveConnections-1 do
begin
if ServerSocket1.Socket.Connections[i].RemoteAddress='XXXX' then
ServerSocket1.Socket.Connections[i].SendText('hello');
end;

温馨提示:答案为网友推荐,仅供参考