奇怪的是,我在調用GetDirectories()方法時偶爾遇到錯誤。方法Directory.GetDirectories失敗
當我們的IT部門遠程將某些文件夾移動到本地計算機時,就開始發生這種情況。只有在使用C#瀏覽這些文件夾時纔會出現此錯誤。
錯誤信息:「訪問路徑 'C:\用戶\ XXXX \ XXXXX被拒絕'
代碼:
public static string[] GetDirectoryInfo(string path)
{
if (Directory.Exists(path))
{
//This call is failing on the new folder.
return Directory.GetDirectories(path);
}
return new string[0];
}
不是很複雜,正確嗎?
使用Windows資源管理器導航時,該文件夾不存在。
在CMD提示符下,我可以將目錄更改爲此文件夾;跟着DIR命令,我得到錯誤'找不到文件'。
我在猜測 這個問題是一個Win32問題,當文件夾被移動時沒有得到清理。我不知道如何糾正這個問題,除了挖掘反編譯的System.IO類;如果我沒有得到解決方案,我會這樣做。
你找不到文件的錯誤,但你說的到您的計算機。我很困惑。如果文件夾在資源管理器中可見,請檢查權限,否則我認爲ILSpy是找出錯誤原因的最佳選擇。 – ohmusama
不,有問題的文件夾在資源管理器中不可見。權限不是問題,這是我檢查的第一件事。我一直在尋找新的工具,所以我會檢查出ILSpy。謝謝。 – user2825489
權限是問題所在。請IT部門爲您解決這個問題。 –