"Вызов исключения" DownloadFile "с аргументом" 2 ":" Исключение произошло во время запроса WebClient ".

Я пытаюсь настроить загрузку нужных файлов для автоматизации и установки процесса. Я получаю ошибки каждый раз, когда запускаю скрипт, и я изменил его семь раз с воскресенья, и он все еще дает мне ошибки.

Сценарий:

  if (test-path $java_path)

   {
   Write-Output "Java already installed. Skipping script"
   exit 0
    }

  else 

    {
      $source = "http://our.server.com/java-installer.zip"
      $destination = "c:\CHPACS"
      $client = new-object System.Net.WebClient
      $client.DownloadFile($source, $destination)

      }

Я получаю сообщение об ошибке

 Exception calling "DownloadFile" with "2" argument(s): "An exception occurred during a WebClient request."
 At C:\ps_script\testjava.ps1:41 char:31
 +           $client.DownloadFile <<<< ($source, $destination)
 + CategoryInfo          : NotSpecified: (:) [], ParentContainsErrorRecordException
 + FullyQualifiedErrorId : DotNetMethodException

Нужно ли создавать функцию для правильной работы?

Спасибо:

Ответ 1

Если вы посмотрите на документацию MSDN для метода DownloadFile, вы заметите, что вторым параметром является имя файла, а не каталог. Итак, если вы переопределяете $destination на что-то вроде:

$destination = "c:\CHPACS\java-installer.zip"

тогда он должен работать.

Проверяйте во-вторых, что файл, который вы пытаетесь загрузить, не открыт или не выполняется в настоящий момент. Это исключение будет поднято, если файл используется.

Ответ 2

Вы должны указать имя файла, как сказал Давид +, папка должна существовать.