我自己写了点代码,可是对某些文件,比如我试了个exe文件,会溢出,而且传图片之类的过去,也不能正常打开,请指点一下,我的代码如下:客户端:
Dim FilePath, FileStr, TmpStr As String
Dim StrNum, i As LongPrivate Sub Command1_Click()
cmdl1.ShowOpen
FilePath = cmdl1.FileName
Text1 = FilePath
RichTextBox1.LoadFile FilePath
End SubPrivate Sub Command2_Click()
StrNum = 1
FileStr = RichTextBox1.Text
i = Len(FileStr) / 10
StrNum = Int(i)
If StrNum < i Then StrNum = StrNum + 1
For i = 1 To StrNum - 1
TmpStr = Mid(FileStr, (i - 1) * 10 + 1, 10)
Winsock1.SendData TmpStr
ProgressBar1.Object = i * 100 / StrNum
Next i
Winsock1.SendData Right(FileStr, Len(FileStr) - (StrNum - 1) * 10)
Pause 500
Winsock1.SendData "~over"
End SubPrivate Sub Command3_Click()
Winsock1.Connect "127.0.0.1"
End SubSub Pause(HowLong As Long)
For i = 1 To HowLong
DoEvents
Next i
End Sub
服务端:
Sub GetData()
If TmpStr = "~over" Then
cmdl1.ShowSave
SaveFile = cmdl1.FileName
If SaveFile <> "" Then
RichTextBox1.SaveFile SaveFile
End If
Else
MyStr = MyStr & TmpStr
RichTextBox1.Text = MyStr
End If
End Sub谢谢
Dim FilePath, FileStr, TmpStr As String
Dim StrNum, i As LongPrivate Sub Command1_Click()
cmdl1.ShowOpen
FilePath = cmdl1.FileName
Text1 = FilePath
RichTextBox1.LoadFile FilePath
End SubPrivate Sub Command2_Click()
StrNum = 1
FileStr = RichTextBox1.Text
i = Len(FileStr) / 10
StrNum = Int(i)
If StrNum < i Then StrNum = StrNum + 1
For i = 1 To StrNum - 1
TmpStr = Mid(FileStr, (i - 1) * 10 + 1, 10)
Winsock1.SendData TmpStr
ProgressBar1.Object = i * 100 / StrNum
Next i
Winsock1.SendData Right(FileStr, Len(FileStr) - (StrNum - 1) * 10)
Pause 500
Winsock1.SendData "~over"
End SubPrivate Sub Command3_Click()
Winsock1.Connect "127.0.0.1"
End SubSub Pause(HowLong As Long)
For i = 1 To HowLong
DoEvents
Next i
End Sub
服务端:
Sub GetData()
If TmpStr = "~over" Then
cmdl1.ShowSave
SaveFile = cmdl1.FileName
If SaveFile <> "" Then
RichTextBox1.SaveFile SaveFile
End If
Else
MyStr = MyStr & TmpStr
RichTextBox1.Text = MyStr
End If
End Sub谢谢
open myfile for binary as #1
这样打开吗,可是有些文件这样打开不能读取全部的文件内容,比如图片,就只能读取一部分,后面很多都读不出,该怎么办?
www.21code.com 去找现成的看看