【发布时间】:2014-11-04 05:16:49
【问题描述】:
我最近在使用 File.AppendAllText 写入网络上的共享驱动器时开始收到 System.UnauthorizedAccessException 错误。我认为发生这种情况时网络发生了一些变化。我的应用程序中的代码没有改变。
我已要求我们的 IT 部门授予我对该文件夹的完全权限。如果我导航到文件并查看属性下的安全选项卡,我可以看到我在我的用户名下拥有修改、读取和执行、读取、写入的权限。我也是对文件夹具有读取、写入和修改权限的组的成员。
这在同一个文件夹中没有错误:
File.WriteAllText(myFile, myText)
这会在到达 AppendallText 时生成 System.UnauthorizedAccessException 错误:
If File.Exists(myFile) = False Then
' Create a file to write to.
Dim createText As String = logTime & " " & report_data
File.WriteAllText(myFile, createText)
Else
Dim appendText As String = logTime & " " & report_data
File.AppendAllText(myFile, appendText)
End If
我已尝试删除文件并重新创建它,但没有任何区别。
我试过 File.SetAttributes(myFile, FileAttributes.Normal)
IT 部门看不到问题所在。
我可以手动打开、更改和修改文件。仅当我尝试以编程方式执行此操作时才会出现问题。
是否有不同的“用户”尝试修改文件?文件可以以某种方式打开,还是会产生不同的错误?
我正在使用 VB.NET 2012、.net 框架 4.5、Windows 8.1
【问题讨论】:
-
你得到的异常中是否有 InnerException ? msdn.microsoft.com/en-us/library/…
标签: vb.net file-io file-permissions