Public Shared Function ListFilesOnServerSsl(ByVal serverUri As Uri) As Boolean
' The serverUri should start with the ftp:// scheme.
If serverUri.Scheme <> Uri.UriSchemeFtp Then
Return False
End If
' Get the object used to communicate with the server.
Dim request As FtpWebRequest = CType(WebRequest.Create(serverUri), FtpWebRequest)
request.Method = WebRequestMethods.Ftp.ListDirectory
request.EnableSsl = True
' Get the ServicePoint object used for this request, and limit it to one connection.
' In a real-world application you might use the default number of connections (2),
' or select a value that works best for your application.
Dim sp As ServicePoint = request.ServicePoint
Console.WriteLine("ServicePoint connections = {0}.", sp.ConnectionLimit)
sp.ConnectionLimit = 1
Dim response As FtpWebResponse = CType(request.GetResponse(), FtpWebResponse)
Console.WriteLine("The content length is {0}", response.ContentLength)
' The following streams are used to read the data returned from the server.
Dim responseStream As Stream = Nothing
Dim readStream As StreamReader = Nothing
Try
responseStream = response.GetResponseStream()
readStream = New StreamReader(responseStream, Encoding.UTF8)
If readStream IsNot Nothing Then
' Display the data received from the server.
Console.WriteLine(readStream.ReadToEnd())
End If
Console.WriteLine("List status: {0}", response.StatusDescription)
Finally
If readStream IsNot Nothing Then
readStream.Close()
End If
If response IsNot Nothing Then
response.Close()
End If
End Try
Console.WriteLine("Banner message: {0}", response.BannerMessage)
Console.WriteLine("Welcome message: {0}", response.WelcomeMessage)
Console.WriteLine("Exit message: {0}", response.ExitMessage)
Return True
End Function