在读取文本文件时,拒绝访问该路径

时间:2014-03-19 03:55:26

标签: vb.net file

我在以下路径中有一个文本文件:

\\129.253.145.235\Hostsw\Host\SW\DIABLO3S\CONFIGSW\AMBIENT6\MATRIX\VALIDCCC.TXT

我正在阅读文本文件,如下所示:

     Dim file As StreamWriter = New StreamWriter(filepath, True)

追加新行如下:

   file.WriteLine(sb)
   file.Close()

我收到错误消息:

访问路径' \ 129.253.145.235 \ Hostsw \ Host \ SW \ DIABLO3S \ CONFIGSW \ AMBIENT6 \ MATRIX \ VALIDCCC.TXT'被拒绝。

如果textfile存在,那么我只需要在textfile中附加新行。

1 个答案:

答案 0 :(得分:0)

Damian Drygiel已提到here

您的asp.net帐户{MACHINE}\ASPNET没有该位置的写入权限。这就是它失败的原因。

考虑将资源的访问权限授予ASP.NET请求标识。

右键单击下载文件夹Properties > Security Tab > Edit > Add > locations > choose your local machine > click OK > Type ASPNET below "Enter the object name to select" > Click Check Names 选中所需访问权限框(Full Control)。如果它不适合您,请使用Network Service

现在,这应显示您的本地{MACHINENAME}\ASPNET帐户,然后您为此帐户设置写入权限。

否则,如果应用程序通过<identity impersonate="true"/>模拟,则标识将是匿名用户(通常为IUSR_MACHINENAME)或经过身份验证的请求用户。


或者只使用专用位置在ASP.NET中存储App_Data的文件。要创建它,请右键单击ASP.NET项目(在Visual Studio中)Add > Add ASP.NET Folder > App_Data。然后,您就可以将数据保存到此位置:

OR:

我们收回了文件夹的所有权。您可以在ASP.NET临时文件目录的安全选项卡中执行此操作。

  • 右键单击并选择&#34;属性&#34;
  • 选择&#34;安全&#34;标签
  • 点击&#34;高级&#34;按钮
  • 选择&#34;所有者&#34;标签
  • 选择所有者(MACHINENAME \ Administrators),选中&#34;替换 对于子容器和对象的所有者&#34;然后单击“确定”