C# 如何处理这类问题UnauthorizedAccessException是handli错误?

C# 如何处理这类问题UnauthorizedAccessException是handli错误?,c#,asp.net,winforms,C#,Asp.net,Winforms,我已经看到了,但还没有完全解决这个问题。当我阅读所有“查找并包含”文件夹编译器时,meg抛出了一个关于未授权文件夹的异常。错误抛出编译器: 对路径F:\System Volume information\的访问被拒绝 我的代码是 private void toolStripButton8_Click(object sender, EventArgs e) { try { Uri _urii = new Uri(toolStripTextBox1.Text);

我已经看到了,但还没有完全解决这个问题。当我阅读所有“查找并包含”文件夹编译器时,meg抛出了一个关于未授权文件夹的异常。错误抛出编译器:

对路径F:\System Volume information\的访问被拒绝

我的代码是

private void toolStripButton8_Click(object sender, EventArgs e)
{
    try
    {
        Uri _urii = new Uri(toolStripTextBox1.Text);
        //            MessageBox.Show(_urii.Host);
        string _sthost = _urii.Host;

        string aa = "F:\\" + _sthost + " ";
        string[] _file = Directory.GetFiles("F:\\", "*.txt", SearchOption.AllDirectories); //Exception here create
        foreach (var item in _file)
        {
            MessageBox.Show(item.Length.ToString());

我的问题是F驱动器号是否有系统卷信息文件夹。。为什么引发这种类型的异常?

当您在资源管理器中执行“dir”或查看文件时,隐藏+系统文件夹不会显示,但这并不意味着它们不在那里

“系统卷信息”显示在非只读磁盘上,Windows触摸和权限设置的方式甚至使管理员都没有访问权限(同样,您也可以通过获得所有权和添加访问权限来获得一个到任何其他受保护位置的权限)

一般来说,您应该预料到诸如“拒绝访问”之类的IO错误,并适当地处理它们。也就是说,在文件枚举期间忽略所有IO异常就可以了

注意:使用此命令(在CMD控制台中键入)可查看该文件夹上的属性:

cd f:\ /d && attrib "System Volume Information"

我的帐户等于admin……吹毛求疵:在这种情况下,编译器没有发出错误,而是我检查了隐藏文件的runtimeSir,没有任何类型的文件字符串[]\u file=Directory.GetFiles(“F:\\”,“*.txt”,SearchOption.AllDirectories)//此处创建异常