Have you ever had a problem while trying to figure out how to manage FTP Servers with VB.NET?
I have a solution. Well, it's not a solution, it's a class. :P
With this class, you'll be able to use simple commands like:
That command will really do this:
Dim _FileInfo As New System.IO.FileInfo(_FileName)
Dim _FtpWebRequest As FtpWebRequest = FtpWebRequest.Create(_UploadPath)
_FtpWebRequest.Credentials = New System.Net.NetworkCredential(_FTPUser, _FTPPassword)
_FtpWebRequest.KeepAlive = False
_FtpWebRequest.Timeout = 20000
_FtpWebRequest.Method = WebRequestMethods.Ftp.UploadFile
_FtpWebRequest.UseBinary = True
_FtpWebRequest.ContentLength = _FileInfo.Length
Dim buffLength As Integer = 2048
Dim buff(buffLength - 1) As Byte
Dim _FileStream As System.IO.FileStream = _FileInfo.OpenRead()
Dim _Stream As System.IO.Stream = _FtpWebRequest.GetRequestStream()
Dim contentLen As Integer = _FileStream.Read(buff, 0, buffLength)
Do While contentLen <> 0
_Stream.Write(buff, 0, contentLen)
contentLen = _FileStream.Read(buff, 0, buffLength)
Catch ex As Exception
MessageBox.Show(ex.Message, "Error when uploading file, try again.", _
I wrote this class because I had some problems in the past managing an FTP server with VB.NET for a Messenger-like chat.
I have a little problem with deleting a line with number from a file. If someone can help me with that, this .dll will be complete.
Using the Code
First of all, you have to add a reference to the .dll in your project, then, you have to import the class with:
After using it, you have to set the User and password with:
FTPFunctions.Functions._FTPUser = "YourFTPServerUser"
FTPFunctions.Functions._FTPPassword = "YourFTPServerPassword"
You can write that whenever you want to set those variables.
You're ready to use it. You can use these functions:
Hope it helps someone!