備注:這是一個低級錯誤,起始真正的原因不是訪問權限的問題.
真正的原因是:這個程序要讀取遠程電腦上共享文件夾里的文件,但是沒有遠程訪問代碼,導致找不到相關的目錄。所以才報錯!
查詢一個文件,但程序突然不能.發現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!