class= " lineNumbers "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
|
class=
class= " notpretty " >FTP.vb id= " codeSnippet789986 " 0)
'objLocalFileStream.Write (bData, 0, bytesRead)
'bytesRead = mDataStream.Read (bData, 0, BUFFSIZE)
'Application.DoEvents ()
'Петля
Задвижка ex как исключение
DBGeneralError («FTP.ReceiveFile», Err.GetException ())
objLocalFileStream.Close ()
objLocalFileStream = ничего
mDataStream.Close ()
mDataStream = ничего
mTCPData.Close ()
mTCPData = ничего
Thread.Sleep (400)
sOut = ReadReply ()
'Если мы получали здесь, то мы терпели неудачу.
Возвращенное ложное
Попытка конца
objLocalFileStream.Close ()
objLocalFileStream = ничего
mDataStream.Close ()
mDataStream = ничего
mTCPData.Close ()
mTCPData = ничего
Thread.Sleep (400)
sOut = ReadReply ()
'Если мы получали здесь, то мы должны быть хороши.
Возвращенно True
Закончите функцию
Sub ReadyDataSocketAndSendCommand (strCommand ByVal как strMethodName шнура, ByVal как mTCPData шнура, ByRef как mDataStream TcpClient, ByRef как NetworkStream)
Затемните sOut как шнур
Затемните strIPAddress как шнур
Если (bConnectionOpen) после этого
Ход новое FtpClientException (0, strMethodName & vbCrLf & «соединение открытое»)
Закончитесь если
'
'Установите пассивный режим
'
'Пассивный режим раскрывает соединение на дистанционном компьютере и возвращает ()
'номер порта, котор нужно использовать. Более поздно, это причиняет сообщение 125. Отсутствие беспокойства! ()
'Предполагаемо случиться.
'
SendFTPCommand («PASV»)
sOut = ReadReply ()
Если не ReplyContains («227», sOut, strErrorCode, strErrorMessage) после этого
Бросьте новое FtpClientException (CInt (strErrorCode), «PASV» & vbCrLf & strErrorMessage)
Закончитесь если
ParsePASVResult (sOut, strIPAddress, порт)
Application.DoEvents ()
'
'Раскройте гнездо
'
Попытка
mTCPData = новое TcpClient (strIPAddress, порт)
Задвижка ex как исключение
Ход новое FtpClientException (0, «открытое гнездо» & vbCrLf & strIPAddress &» «& Port.ToString & vbCrLf & ex. Сообщение)
Попытка конца
mTCPData.ReceiveBufferSize = BUFFSIZE
mTCPData.SendBufferSize = BUFFSIZE
Попытка
mDataStream = mTCPData.GetStream ()
Задвижка ex как исключение
Ход новое FtpClientException (0, «GetStream» & vbCrLf & strIPAddress &» «& Port.ToString & vbCrLf & ex. Сообщение)
Попытка конца
'Пошлите командование FTP к серверу FTP
SendFTPCommand (strCommand)
sOut = ReadReply ()
'Мы получим или подтверждение загрузки или сообщение ошибки ()
Если не ReplyContains («150», sOut, strErrorCode, strErrorMessage) AndAlso не ReplyContains («125», sOut, strErrorCode, strErrorMessage) после этого
Бросьте новое FtpClientException (CInt (strErrorCode), strCommand & vbCrLf & strErrorMessage)
Закончитесь если
Закончите подводную лодку
|