Das Herunterladen einer Datei mit dem Webclient führt zu „Zugriff auf den verweigerten Pfad verweigert“

StackOverflow https://stackoverflow.com//questions/9676061

  •  12-12-2019
  •  | 
  •  

Frage

Ich habe eine Schaltfläche, mit deren Klick ich die Datei auf den lokalen PC herunterladen möchte. Ich verwende webclient.downloadfile(), erhalte jedoch die folgende Fehlermeldung:

Access to the path 'C:\Windows\SysWOW64\inetsrv\ms-banner.gif' is denied.

Ich verwende den folgenden Code, um die Datei herunterzuladen:

WebClient client = new WebClient();
        client.DownloadFile(new Uri("http://www.contoso.com/library/homepage/images/ms-banner.gif"), "ms-banner.gif");

Ich verstehe nicht, warum die Datei vom lokalen Server abgerufen wird, da ich bereits die Remote-URI angegeben habe

War es hilfreich?

Lösung

Es ruft die Datei vom Remote-Server ab, versucht aber, sie im aktuellen Verzeichnis zu speichern, da Sie als zweites Argument nur einen relativen Dateinamen angegeben haben: "ms-banner.gif".Und es scheint, dass das Konto, unter dem Sie Ihre Anwendung ausführen, keine Berechtigung zum Schreiben in das aktuelle Arbeitsverzeichnis hat, was zufällig der Fall ist C:\Windows\SysWOW64\inetsrv.

Sie haben also grundsätzlich 2 Möglichkeiten:

  • Ändern Sie das Konto, unter dem Sie Ihre Anwendung ausführen, und erteilen Sie ihm Schreibberechtigungen für dieses Verzeichnis
  • Geben Sie einen anderen Speicherort (als absoluten Pfad) an, um die Datei dort zu speichern, wo das Konto, unter dem Sie Ihre Anwendung ausführen, über Schreibberechtigungen verfügt.

Andere Tipps

contoso.com umleitet Microsoft.com ... den Pfad, den Sie in der URL haben, ist nicht vorhanden, und Sie können sie nicht herunterladen.Ich bin nicht sicher, warum es versucht, zu Ihrem lokalen Computer zu gehen, aber Sie haben einige andere -Anbild auf einer anderen Website ausprobiert?Wie http://i.cdn.Turner.com / cnn / .e / IMG / 3.0 / global / header / hdr-main.gif zum Beispiel?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top