Net send File

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Net send File

Сообщение Max! » 26.09.2004 (Вс) 17:14

Дайте нормальный код каторый бо слал фаил по сетке ! И большие фаилы мог слать и получать , а то я однажды соченил небольшой но фиг он шлёт только небольшие файлы ! А тут пришлось пабольше файлик послать и бум , обрезает его пресылает не весь ! Мне нужен код без наваротов самый обочный но шоб к требованиям выше переч. подходил !!!!

Вот код каторый я использовал

Код: Выделить всё

'Шлём файл

Private Sub Command1_Click()
ws.Close
ws.RemoteHost = ip
ws.RemotePort = port
ws.Connect
End Sub

Private Sub Command2_Click()
Dim buffer$
Open App.Path & "\ff.txt" For Binary Access Read As #1
buffer$ = Space(LOF(1))
Get #1, , buffer$
Close #1
ws.SendData buffer$
End Sub

Private Sub Command3_Click()
ws.Close
End Sub


Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim ds As String
ws.GetData ds
MsgBox "" & ds
End Sub

'Получаем файл

Private Sub Form_Load()
ws.Close
ws.Listen
End Sub

Private Sub ws_Close()
ws.Close
ws.Listen
End Sub

Private Sub ws_ConnectionRequest(ByVal requestID As Long)
ws.Close
ws.Accept requestID
ws.SendData "Connectded"
End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
ws.GetData buffer$
Open App.Path & "\h\file2.txt" For Binary Access Write As #1
Put #1, , buffer$
Close #1
End Sub


Может требуется мой код править и всё ! Help ! :wink: :roll:
Max!

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 26.09.2004 (Вс) 17:51

:arrow: <DELETE> :arrow: 8)
Последний раз редактировалось EvilCoder 12.05.2007 (Сб) 17:21, всего редактировалось 1 раз.
<<------- EvilCoder ------->>

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 26.09.2004 (Вс) 18:40

Тот код каторый я использовал это A WHOLE BUFFER , ты имеиш виду PARTIAL BUFFER ????
Код

Код: Выделить всё
Dim buffer$           
Dim buffersize As Long, bufferleft As Long
buffersize = 1024
Open App.Path & "\file1.exe" For Binary Access Read As #1
Open App.Path & "\file2.exe" For Binary Access Write As #2
bufferleft = LOF(1)
retake:
buffer$ = Space(buffersize)
Get #1, , buffer$
Put #2, , buffer$
bufferleft = bufferleft - buffersize
If bufferleft = 0 Then GoTo Done:
If bufferleft < buffersize Then buffersize = bufferleft
GoTo retake:
Done:
Close #1
Close #2
MsgBox "done"
Max!

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 26.09.2004 (Вс) 22:31

Please help need !!! :wink: :roll:
Max!

Max!
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 502
Зарегистрирован: 03.04.2003 (Чт) 22:08
Откуда: Литва

Сообщение Max! » 26.09.2004 (Вс) 23:22

EvilCoder Магёш подробнее ?? Please :roll:
Max!

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 26.09.2004 (Вс) 23:46

Max, если файл большой, то DataArrival произойдёт не один, а несколько раз. Соответственно, в нём файл надо дописывать, а не перезаписывать. Ключевое слово - Open For Append.
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 68

    TopList  
cron