Dim op As New OpenFileDialog
Dim str As String
Dim sv As New FolderBrowserDialog
Private Function FtpFolderDelete(ByVal folder_name As String, ByVal file_name As String, ByVal username As String, ByVal password As String) As Boolean
Try
Dim myFtpWebRequest As FtpWebRequest
Dim myFtpWebResponse As FtpWebResponse
myFtpWebRequest = WebRequest.Create("ftp://" & folder_name & "/" & file_name)
myFtpWebRequest.Credentials = New NetworkCredential(username, password)
myFtpWebRequest.Method = WebRequestMethods.Ftp.RemoveDirectory
myFtpWebResponse = myFtpWebRequest.GetResponse()
myFtpWebResponse.Close()
Return True
Catch ex As Exception
Return False
End Try
End Function
Private Function FtpFileDelete(ByVal folder_name As String, ByVal file_name As String, ByVal username As String, ByVal password As String) As Boolean
Try
Dim myFtpWebRequest As FtpWebRequest
Dim myFtpWebResponse As FtpWebResponse
myFtpWebRequest = WebRequest.Create("ftp://" & folder_name & "/" & file_name)
myFtpWebRequest.Credentials = New NetworkCredential(username, password)
myFtpWebRequest.Method = WebRequestMethods.Ftp.DeleteFile
myFtpWebResponse = myFtpWebRequest.GetResponse()
myFtpWebResponse.Close()
Return True
Catch ex As Exception
Return False
End Try
End Function
Private Function FtpFolderCreate(ByVal folder_name As String, ByVal username As String, ByVal password As String) As Boolean
Dim request As Net.FtpWebRequest = CType(FtpWebRequest.Create("ftp://" & folder_name & "/" & str), FtpWebRequest)
request.Credentials = New NetworkCredential(username, password)
request.Method = WebRequestMethods.Ftp.MakeDirectory
Try
Using response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse)
End Using
Catch ex As WebException
Dim response As FtpWebResponse = DirectCast(ex.Response, FtpWebResponse)
If response.StatusCode = FtpStatusCode.ActionNotTakenFileUnavailable Then
Return False
End If
End Try
Return True
End Function
Private Function FtpFileUpload(ByVal folder_name As String, ByVal file_name As String, ByVal username As String, ByVal password As String) As Boolean
Try
Dim request As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create("ftp://" & folder_name & "/" & op.SafeFileName), System.Net.FtpWebRequest)
request.Credentials = New System.Net.NetworkCredential(username, password)
request.Method = System.Net.WebRequestMethods.Ftp.UploadFile
Dim file() As Byte = System.IO.File.ReadAllBytes(file_name)
Dim strz As System.IO.Stream = request.GetRequestStream()
strz.Write(file, 0, file.Length)
strz.Close()
strz.Dispose()
Return True
Catch ex As Exception
Return False
End Try
End Function
Private Function FtpFileDownload(ByVal host As String, ByVal remoteFile As String, ByVal localFile As String, ByVal username As String, ByVal password2 As String) As Boolean
Try
localFile = localFile & "/" & remoteFile
Dim URI As String = "ftp://" & host & "/" & remoteFile
Dim ftp As System.Net.FtpWebRequest = CType(System.Net.FtpWebRequest.Create(URI), System.Net.FtpWebRequest)
ftp.Credentials = New System.Net.NetworkCredential(username, password2)
ftp.KeepAlive = False
ftp.UseBinary = True
ftp.Method = System.Net.WebRequestMethods.Ftp.DownloadFile
Using response As System.Net.FtpWebResponse = CType(ftp.GetResponse, System.Net.FtpWebResponse)
Using responseStream As IO.Stream = response.GetResponseStream
Using fs As New IO.FileStream(localFile, IO.FileMode.Create)
Dim buffer(2047) As Byte
Dim read As Integer = 0
Do
read = responseStream.Read(buffer, 0, buffer.Length)
fs.Write(buffer, 0, read)
Loop Until read = 0
responseStream.Close()
fs.Flush()
fs.Close()
End Using
responseStream.Close()
End Using
response.Close()
End Using
Return True
Catch ex As Exception
Return False
End Try
End Function
(Все функции собирал и писал сам.)
[Ссылки могут видеть только зарегистрированные пользователи. ]
Код первой кнопки:
Код:
op.ShowDialog()
If op.FileName = "" Then
Else
If FtpFileUpload(TextBox1.Text, op.FileName, TextBox3.Text, TextBox4.Text) = True Then
MsgBox("Удачно")
Else
MsgBox("Не удачно")
End If
End If
Код второй кнопки:
Код:
str = InputBox("Введите путь к файлу")
sv.ShowDialog()
If sv.SelectedPath = "" Then
Else
If FtpFileDownload(TextBox1.Text, str, sv.SelectedPath, TextBox3.Text, TextBox4.Text) = True Then
MsgBox("Удачно")
Else
MsgBox("Не удачно")
End If
End If
Код третьей кнопки:
Код:
str = InputBox("Введите название новой папки")
If FtpFolderCreate(TextBox1.Text, TextBox3.Text, TextBox4.Text) = True Then
MsgBox("Удачно")
Else
MsgBox("Не удачно")
End If
Код четвертой кнопки:
Код:
str = InputBox("Введите название файла")
If FtpFileDelete(TextBox1.Text, str, TextBox3.Text, TextBox4.Text) = True Then
MsgBox("Удачно")
Else
MsgBox("Не удачно")
End If
Код пятой кнопки:
Код:
str = InputBox("Введите название папки")
If FtpFolderDelete(TextBox1.Text, str, TextBox3.Text, TextBox4.Text) = True Then
MsgBox("Удачно")
Else
MsgBox("Не удачно")
End If
Готово, можно тестить. В первый текстбокс вписываем ип (пример: 123.123.232.123:1232), во второй логин, в третий пароль.
Если что-то не понятно, смотрим видео.
Video
Исходники:
[Ссылки могут видеть только зарегистрированные пользователи. ] [Ссылки могут видеть только зарегистрированные пользователи. ]
________________
Последний раз редактировалось OrBiT_DaRk; 11.05.2013 в 22:16.