备注:这是一个低级错误,起始真正的原因不是访问权限的问题.
真正的原因是:这个程序要读取远程电脑上共享文件夹里的文件,但是没有远程访问代码,导致找不到相关的目录。所以才报错!
查询一个文件,但程序突然不能.发现Directory.Exists(),这个语句返回一致为Flase.
查了几个小时,说是文件访问权限的问题.
在自己的电脑上模拟,还真是.
如果你所用的管理员没有这个文件的“读取”权限,就会报错.
“列出文件夹内容”这项也不能勾选.
验证代码
1 using System; 2 using System.IO; 3 namespace test 4 { 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 string path1 = "G:"; 10 string path2 = "F:"; 11 if (!Directory.Exists(path1)) //判断文件夹是否存在,一般直接选着文件夹不会有问题,这里是应对手动输入的情况 12 { 13 Console.WriteLine("path is wriong:" + path1); 14 } 15 else 16 { 17 Console.WriteLine("path is right:" + path1); 18 } 19 20 if (!Directory.Exists(path2)) //判断文件夹是否存在,一般直接选着文件夹不会有问题,这里是应对手动输入的情况 21 { 22 Console.WriteLine("path is wriong:" + path2); 23 } 24 else 25 { 26 Console.WriteLine("path is right:" + path2); 27 } 28 Console.ReadKey(); 29 } 30 } 31 }
执行结果:
~God bless!Run OK!