2011-06-06 122 views
1

Unable to create instance of class TestClass. Error: System.UnauthorizedAccessException: Access to the path 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\TestProject' is denied.無法創建類的實例

System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath) System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) System.IO.FileStream..ctor(String path, FileMode mode) KM_Automation.KM_Library.GetAutoConfig() in C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\TestProject\Test_Library.cs: line 40 KM_Automation.KM_Functional_Trans_General..ctor() in C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\TestProject\TestClass.cs: line 33

Test_Library.cs:

public string[] GetAutoConfig() 
{ 
    FileStream fs = new FileStream(sConfigFile, FileMode.Open); // line 40 
    StreamReader sr = new StreamReader(fs); 
    string line = ""; 
    string[] arrline = new string[2]; 
} 

TestClass.cs:

arrConfig = KMLib.GetAutoConfig(); // line 33 

爲什麼會出現這個錯誤?我確定該文件夾是共享給所有人的,並刪除了只讀。

回答

2

您會收到此錯誤消息,因爲異常消息顯示當前用戶無權訪問相關文件。您需要調整該文件的權限以及它的父目錄以允許訪問有問題的用戶

問題的一部分是您選擇的位置。看起來您正嘗試在一組用戶之間共享配置文件,但您已將文檔的位置選擇爲管理員目錄。

C:\Documents and Settings\Administrator\My Document

如果你想分享用戶之間,那麼我會用All UsersPublic目錄,而不是因爲它意味着這種類型的操作。

+0

非常感謝你:) – Maya 2011-06-06 15:02:13

1

當您共享一個文件夾時,Windows會查看兩組權限:共享權限,然後是實際的文件安全權限。除非您的文件夾安全性設置爲允許所有人讀取訪問權限,否則無論您的共享設置設置爲什麼。

最佳做法是將共享級別設置爲完全控制,然後使用安全設置微調權限。默認情況下,您的用戶文件夾(管理員)只能由該名稱用戶和系統管理員寫入和讀取。

+0

謝謝!!感謝! – Maya 2011-06-06 15:03:31

1

當它表示它沒有權限時,可能是這樣 - 例如,如果您正在運行網站,則無法讀取任何文件夾,因爲您的默認用戶被匿名訪問者用於「沙盒」到低文件系統權限。

仔細檢查您的應用程序運行在哪個用戶名(網站或桌面應用程序)下,爲其設置安全和共享權限(如果您通過共享訪問它)。

另一個錯誤是該文件不存在。這是我們有的奇怪的誤導性錯誤之一 - 但是,可以肯定的是,在執行之前檢查sConfigFile的值。

+0

非常感謝 – Maya 2011-06-06 15:02:58