Public Shared Function ListFilesOnServer(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
' 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)
' 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
Return True
End Function