Ошибка на удаленном сервере: 227 Вход в пассивный режим (ххх, ххх, ххх, хх)
Я попытался загрузить файл.bak с FTP и сохранить его в локальном каталоге на моем компьютере.
Это мой код:
Try
My.Computer.Network.DownloadFile("ftp://nameOfServer/file.bak", "C:\Users\Admin\Documents\BackUp\file.bak", "user", "password")
Catch ex As Exception
MessageBox.Show(ex.Message, "Error")
End Try
Когда я выполняю код, я получаю эту ошибку:
Error on the remote server: 227 Entering Passive Mode(xxx,xx,xxx,xxx,xxx,xx)
Я знаю, что мне нужно перевести его в активный режим, но я не могу найти способ правильно работать с моим кодом. Как я могу решить это? Спасибо
1 ответ
Вы должны убедиться, что вы загружаете файлы правильно, следуя этой старой редакции.
После некоторого возни, чтобы воссоздать проблему, проблема была решена с помощью следующего кода
Dim username As String = "username" Dim password As String = "password" Dim address As String = "address" Dim file As String = "file" Dim outputFile As String = "outputFile" My.Computer.Network.DownloadFile("ftp://" + username + ":" + password + "@" + address + "/" + file, outputFile)
Или следующее было более лаконично в состоянии решить проблему
My.Computer.Network.DownloadFile("ftp://username:password@address/file", "outputLocation")
Но другая возможная причина ваших проблем могла быть просто вызвана отсутствием выходного каталога или, что более вероятно, защищено от записи (политиками безопасности или настройками папок).
Наконец, если у вас есть правильный код и структура файлов, я бы посоветовал обратиться к провайдеру FTP и убедиться, что сервер FTP настроен и оптимизирован для вашего использования. Если вы не можете обратиться за помощью к своему провайдеру ftp, но у вас есть доступ к настройкам ftp, я бы рекомендовал полностью отключить пассивный режим для вашего сервера ftp на свой страх и риск.