我有一个按钮,单击该按钮我想将文件下载到本地电脑上,我正在使用 webclient.downloadfile(),但出现以下错误:

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

我正在使用下面的代码来下载文件:

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

我不明白为什么它从本地服务器获取文件,因为我已经说过远程 uri

有帮助吗?

解决方案

它从远程服务器获取文件,但尝试将其保存在当前目录中,因为您仅指定了相对文件名作为第二个参数: "ms-banner.gif". 。而且您运行应用程序的帐户似乎无权写入当前工作目录,而该目录恰好是 C:\Windows\SysWOW64\inetsrv.

所以你基本上有两种可能性:

  • 修改您运行应用程序的帐户并授予其写入此目录的权限
  • 指定另一个位置(作为绝对路径)将文件保存到运行应用程序的帐户具有写入权限的位置。

其他提示

contoso.com重定向到Microsoft.com ......您在URL中拥有的路径不存在,您将无法下载它。我不确定为什么它试图去你的本地机器,但你在其他网站上尝试过一些其他图像吗?像 http://i.cdn.turner.com / cnn / .e / img / 3.0 / global / header / hdr-main.gif

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top