使用FileStream找不到文件Exception,在资源管理器中打开

时间:2013-05-27 15:01:52

标签: c# file-io filestream

我有以下代码:

FileStream file = new FileStream(@"\\srv\dscan$\001\unknown\2012-04\0011200001001700_001.pdf", System.IO.FileMode.Open);

总是抛出FileNotFoundException。奇怪的是,如果我将完全相同的路径粘贴到Windows资源管理器中,则可以找到并完全打开该文件。

导致这种情况的原因是什么?是否有一种在共享网络驱动器上处理文件流的特殊方法?

3 个答案:

答案 0 :(得分:2)

  

导致这种情况的原因是什么?

执行包含此代码的进程的帐户没有足够的权限从该位置读取。

答案 1 :(得分:1)

Darin Dimitrov说的话。

您在Windows中登录的用户帐户似乎具有足够的权限,或者您输入的用户名和密码在您标记为“记住”之前。

运行代码时,它可能在最小权限(UAC)下运行,或者您正在创建一个Windows服务,它在一个不同的帐户下运行。

问题还可能与美元符号有关,这表示您正试图达到隐藏的份额。我不知道这本身是否存在问题,但可能会影响你(足够)的权利。

答案 2 :(得分:-1)

C#以不同于Windows资源管理器的方式处理路径。 还有一件事,如果你检查这些帖子: Reading File From Network Location

您会发现需要对配置进行更多的工作。