Winsock.ocxを使ってファイル送信ソフトを作りたいのですが、
object.SendData data というやり方で送信しようとすると、
なぜか、8KBまでしか送れません。
これは、Winsockの仕様なのか、やり方がまずいのか分かりません。
どうか、対処方法を教えてください。
開発環境:Windows98SE
VB6SP3
WinsockはTCP方式です。
バイトまで分解して個別に送るというのはどうでしょうか。
Dim GetFileByte() As Byte
Open filename For Binary As #FreeFile()
ReDim GetFileByte(FileLen(filename) - 1)
Get #1, , GetFileByte()
Close
tcpClient.SendData GetFileByte()
僕がやってるのはこんな感じですが無理でした。
多分、どこかが間違ってると思うんですが分かりません。
まず、FreeFileの戻り値は残しておきましょう。
ファイルを開いているのならLOF関数を使ってファイルサイズが
取得できます。
Dim GetFileByte() As Byte
Dim FileNumber As Integer
FileNumber = FreeFile()
Open filename For Binary As FileNumber
ReDim GetFileByte(0 to LOF(FileNumber) - 1)
Get FileNumber , , GetFileByte()
Close FileNumber
tcpClient.SendData GetFileByte()
こんな感じになると思います。
ツイート | ![]() |