【发布时间】:2017-03-08 20:09:24
【问题描述】:
我有一个问题,我无法访问映射文件夹中的任何文件
我的驱动器 N: 映射到 \erpu9\clients\,并且我有 1.txt 文件,我正在尝试读取。
函数File.Exists(@"N:\1.txt")返回false,但File.Exists(@"\\erpu9\clients\1.txt")返回true。
FileInfo.Exists 中也发生了同样的事情。
当我尝试运行 File.ReadAllLines(@"N:\1.txt") 时出现异常:找不到路径 'n:\1.txt' 的一部分,但 File.ReadAllLines(@"\\erpu9\clients\1.txt") 工作正常
我真的迷路了,有什么建议吗?
如果相关,我正在使用 Windows 10、VS2013
【问题讨论】:
-
驱动器映射是否在同一台计算机上以及您的程序在其上/下运行的同一用户上?
-
当你在文件资源管理器中浏览 N: 时,你能看到文件吗?您可以在文本编辑器中打开 1.txt,而没有任何权限问题吗?您是否正确转义了反斜杠,
File.Exists("N:\1.txt")应该是File.Exists("N:\\1.txt")或File.Exists(@"N:\1.txt")等。 -
如果您在具有提升的权限时映射文件,则在您没有提升的权限时将看不到映射,反之亦然。也许这就是正在发生的事情。
-
您是否以管理员身份运行您的应用程序?如果是,尽量不要以管理员身份运行
-
驱动器映射是每个用户的。您可以以管理员身份运行此应用,也可以在 IIS 或其他 Windows 服务中运行 - 无论如何,不在您当前的用户帐户下。
标签: c#