This topic contains 2 replies, has 2 voices, and was last updated by
January 3, 2017 at 2:36 pm #61090ParticipantTopics: 4Replies: 1Points: 0Rank: Member
I have been having problems downloading a file from a FTP site – it keeps on timing out. I am currently trying the following code:
$downloadRequest = [Net.WebRequest]::Create($fileUrl)
$downloadRequest.Method = [System.Net.WebRequestMethods+FTP]::DownloadFile
$downloadRequest.Credentials = $credentials
$downloadResponse = $downloadRequest.GetResponse()
$sourceStream = $downloadResponse.GetResponseStream()
$targetStream = [System.IO.File]::Create($localFilePath)
$buffer = New-Object byte 10240
while (($read = $sourceStream.Read($buffer, 0, $buffer.Length)) -gt 0)
$targetStream.Write($buffer, 0, $read);
I have changed both Timeout and ReadWriteTimeout values but this made no difference. Possibly a setting on the source server?
Anyway – is there a way to resume the download once it has timed out?
January 4, 2017 at 7:00 pm #61237KeymasterTopics: 13Replies: 4872Points: 1,811Rank: Community Hero
Not using that class, no. I'd –strongly– suggest you look at BITS, the Background Intelligent Transfer Service, and its associated PowerShell cmdlets. It's designed for this specific purpose.
January 6, 2017 at 9:42 am #61363ParticipantTopics: 4Replies: 1Points: 0Rank: Member
Thanks – will look at this.
The topic ‘Resume FTP file copy’ is closed to new replies.