今天我们来分享一下通过winsock控件,端口传输文件,以及如何确定传输完成标志。
文件传输完成标志的确定是通过三次握手来确定的,首先,客户端现将文件的长度发送给服务器端,当服务器端受到文件长度之后,进入接受文件状态,同时返回一个“send”信号给客户端。当客户端受到“send”后,再将文件发送服务器。服务器通过接收数据的大小来计算文件是否发送完毕。下面让我们来看一下代码吧。
客户端:
Private Sub Command1_Click()
FileName = "D:/nan/0046929.zip"‘这个是要传的文件路径
Dim FreeF As Integer '/'空闲的文件号
Dim LenFile As Long '/'文件的长度
'Dim bytData() As Byte '/'存放数据的数组
FreeF = FreeFile() '/'获得空闲的文件号
Open FileName For Binary As #FreeF '/'打开文件
'DoEvents
LenFile = LOF(FreeF)
Dim lenstr As String
lenstr = "str" & LenFile
sckclient.SendData lenstr
Close #FreeF
End Sub
Private Sub cmdSend_Click()
Const iMax = 8192
FileName = "D:/nan/0046929.zip"
Dim FreeF As Int