WinSock专题-揭开Winsock的神秘面纱

本文深入探讨了Winsock编程,揭示了如何利用WSOCK32.DLL进行FTP、IRC、电子邮件等Internet通信。文章介绍了ActiveX Winsock控件,通过示例展示了如何在VFP中轻松使用它进行连接、监听、数据传输和事件处理。此外,还讨论了如何创建聊天应用和使用Winsock进行FTP连接及文件下载,以及发送和接收电子邮件。通过对各种方法和事件的解析,展示了在VFP中实现Internet通信的简便性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 在今天TCP/IP处理所有Internet上的通信流.在局域网上也可以运行TCP/IP.

我们可以利用这一点,并在诸如FTP,IRC,e-mail,WWW或其它任何Internet标准类型的通信.要达到这样的目的,需要使用包含在Windows中的一个DLL,也就是所谓的WSOCK32.DLL或相似的名字.

在使用DLL中的唯一问题,直接的,是我们将不得不控制和处理每一个函数的反应而且这将会造成额外的和不必要的开销.

Windows已经有一个ActiveX叫做WINSOCK.OCX.它使用与我们所需要的相同的DLL,并已经用方法和事件控制和处理了整个反应,使它易于使用.

初识ActiveXWinsock控件

方法说明
Accept(requestID)该方法用于接收一个特写的连接.它作为一个参数传递来处理请求.
Bind(LocalPort,LocalIP)为CDP连接指定端口和本地IP.
Close()关闭服务器和客户之间的活动的连接.
GetData(Data,Type,maxLen)用缓冲中的内容填充变量,使其为空.
Listen()对象等等连接.
PeekData(Data,Type,maxLen)用缓冲中的内容填充变量,但不清空缓冲.
SendData(Data)发送数据到远程计算机.


事件说明
Close当远程计算机关闭当前连接时发生
Connect(Error)与服务器的连接成功后.
ConnectionRequest(requestID)当远程计算机发出一个请示时.
DataArrival(BytesTotal)在从远程计算机上接收到新数据时发生.
Error(number,Description,Scode,Source,HelpFile,HelpContext,CancelDisplay)当发生后台处理错误时.
SendComplete数据发送完毕时发生
SendProgress(bytesSent,bytesRemaining)在发送数据时.


属性说明
BytesReceived返回到缓冲中的字节数
LocaHostName返回本地机器的名字
LocalIP本地计算机的IP地址
LocalPort数据传送的端口(客户)或代表一个连接(服务器)
Name对象名
Object运行时自动创建,仅在VFP中.
Protocol使用的协议TCP(0)或UDP(1)


属性说明
RemoteHost返回远程计算机的端口
RemoteHostIP返回远程计算机IP
RemotePort返回远程计算机上的连接端口
SocketHandle返回控件当前连接的句柄
State返回控件的状态:
0=已关闭
1=打开
2=等待连接
3=正在连接
4=决定主机
5=主机已决定
6=正在连接
7=已连接
8=连接被远程计算机关闭
9=错误


在V

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值