【问题标题】:Unable to create instance of class无法创建类的实例
【发布时间】:2011-09-09 08:19:15
【问题描述】:

无法创建类的实例 测试类。错误: System.UnauthorizedAccessException: 访问路径 'C:\Documents 和 设置\管理员\我的 文档\Visual Studio 2010\Projects\TestProject' 被拒绝。

System.IO.__Error.WinIOError(Int32 错误代码,字符串可能是FullPath) System.IO.FileStream.Init(字符串路径, FileMode 模式,FileAccess 访问, Int32 权限,布尔用户权限, FileShare 共享,Int32 bufferSize, 文件选项选项, SECURITY_ATTRIBUTES secAttrs,字符串 msgPath,布尔值 bFromProxy,布尔值 使用长路径) System.IO.FileStream..ctor(字符串 路径、FileMode 模式、FileAccess 访问、文件共享共享、Int32 bufferSize,FileOptions 选项, 字符串 msgPath,布尔 bFromProxy) System.IO.FileStream..ctor(字符串 路径,文件模式模式) C:\Documents 中的 KM_Automation.KM_Library.GetAutoConfig() 和 设置\管理员\我的 文档\Visual Studio 2010\Projects\TestProject\Test_Library.cs: 第 40 行 KM_Automation.KM_Functional_Trans_General..ctor() 在 C:\Documents 和 设置\管理员\我的 文档\Visual Studio 2010\Projects\TestProject\TestClass.cs: 第 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

为什么会出现此错误?我确保该文件夹已共享给所有人,并删除了只读。

【问题讨论】:

    标签: c# .net exception-handling selenium


    【解决方案1】:

    您收到此错误是因为异常消息表明当前用户无权访问相关文件。您需要调整该文件及其父目录的权限以允许访问相关用户

    部分问题在于您选择的位置。您似乎正在尝试在一组用户之间共享配置文件,但您已选择将文档的位置放在管理员目录下。

    C:\Documents and Settings\Administrator\我的文档

    如果您想在用户之间共享,那么我会使用 All UsersPublic 目录,因为它适用于此类操作。

    【讨论】:

      【解决方案2】:

      当您共享文件夹时,Windows 会查看两组权限:共享权限,然后是实际的文件安全权限。除非您的文件夹安全设置为允许所有人读取访问权限,否则您的共享设置设置为什么都没有关系。

      最佳做法是将共享级别设置为完全控制,然后使用安全设置微调权限。默认情况下,您的用户文件夹(管理员)只能由该指定用户和系统管理员读写。

      【讨论】:

        【解决方案3】:

        当它说它没有权限时,可能是 - 例如,如果您正在运行网站,则无法读取任何文件夹,因为您用于匿名访问者的默认用户被“沙盒”到低权限在文件系统上。

        仔细检查您的应用程序在哪个用户名下运行(网站或桌面应用程序),为其设置安全和共享权限(如果您通过共享访问它)。

        另一个错误是文件不存在。这是我们遇到的奇怪的误导性错误之一 - 但是,可以肯定的是,在 sConfigFile 执行之前检查它的值。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-11-28
          • 2013-12-03
          • 2017-12-13
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多