用户特殊文件夹

时间:2017-07-12 05:35:26

标签: c# access special-folders

我需要获取用户特殊的文件夹大小并删除不必要的文件。我有管理员访问权限,但首先我收到访问被拒绝的例外。 我的代码是

        static void Main(string[] args)
    {
        var basePath = @"C:\Users";

        DirectoryInfo basePathInfo = new DirectoryInfo(basePath);
        var usersDirectories = basePathInfo.GetDirectories();

        foreach (var directory in usersDirectories)
        {
            foreach (var dir in directory.GetDirectories())
            {
               Console.WriteLine($"{dir} : {DirSize(dir)} Bytes");
            }
        }

        Console.ReadLine();
    }

    public static long DirSize(DirectoryInfo d)
    {
        // Add file sizes.
        FileInfo[] fis = d.GetFiles();
        long size = fis.Sum(fi => fi.Length);

        // Add subdirectory sizes.
        DirectoryInfo[] dis = d.GetDirectories();
        size += dis.Sum(di => DirSize(di));

        return size;
    }

我尝试了一些文件夹,发现我无法读取文件夹下面的数据

应用程序数据

申请数据

缓存

文档

本地设置

我的文件

NETHOOD

PRINTHOOD

最近

的SendTo

开始菜单

模板

我还添加了一个清单文件,并使用此标记以管理员身份运行

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

请帮助,我该怎么办?

谢谢你的时间。

0 个答案:

没有答案