用VFP实现点对点通信
提起“网聊”,大家都不会陌生。它的实现一般是通过Winsock控件来实现的,有很多程序资料介绍了与该控件的通信。但是看这些资料,基本都是用VB,VC,Delphi等编程语言实现的,而在VFP使用Winsock控件编程的资料很少(几乎找不到),尤其是在VFP传输非文本文件。经过长时间的探索,笔者掌握了一些这方面的编程经验,现总结出来与广大VFP爱好者共同探讨:
首先,编程基础
因为关于Winsock控件的资料在很多媒体上都有介绍,为了节省篇幅我就不详细介绍了。请查找相关信息。这里我只简单说一下要用到的一些设置。为了保证通信的可靠性,下面的程序使用了TCP/IP协议,客户端和服务器端都使用了预设的1001端口(实际操作中可以自己更改)。
二、界面设计
1.客户
客户
上面的接口中有7个对象,属性Name=TcpClient,RemoteHostport=1001。其余属性可以根据需要自行设置,其余对象的设置也可以自行设置。
2.服务器端
计算机网络服务器
上面的接口中有五个对象,属性Name=TcpServer,LocalHostport=1001。该属性必须与客户端的远程主机端口一致,其余属性可以根据需要自行设置,以及其他对象的设置。
第三,实现代码
1.客户
■初始化事件的形式:
public strData
strData = " "
this form . TCP client . remote host = " 192 . 41 . 242 . 18 "
this form . TCP client . remote port = 1001
■“连接”按钮。点击事件
this form . TCP client . object . connect(" 192 . 41 . 242 . 18 ",1001)
this。启用= .f。
■TCP客户端。数据到达事件
*** ActiveX控件事件* * *
LPARAMETERS bytestotal
this form . TCP client . object . get data(@ strData)
this form . txtoutput 1 . value = strData
■TxtSend1。InteractiveChange事件
this form . TCP client . object . send data(this。值)
0条评论