gpt4 book ai didi

c# - 无论如何如何获得对Windows系统上所有文件的读取权限?

转载 作者:太空宇宙 更新时间:2023-11-03 15:33:46 25 4
gpt4 key购买 nike

我希望能够扫描所有逻辑驱动器并获取所有 exe/dll 文件,以便在当前 Windows 机器上的所有程序集中输出所有 .net 类型/类,而不管操作系统版本如何。我运行 wINDOWS 7,我有管理员权限(在代码中检查),但仍然拒绝访问 C:\Documents and Settings

我做错了什么?

bool aaa = AmIAdmin();
GetAllNet();

static Dictionary<string, object> GetAllNet()
{
List<string> binaries = new List<string>();
string[] drives = Directory.GetLogicalDrives();
foreach (string dir in drives)
{
binaries.AddRange(Directory.GetFiles(dir, "*.dll", SearchOption.AllDirectories));
binaries.AddRange(Directory.GetFiles(dir, "*.exe", SearchOption.AllDirectories));
}

return null;
}
static bool AmIAdmin()
{
return new WindowsPrincipal(WindowsIdentity.GetCurrent())
.IsInRole(WindowsBuiltInRole.Administrator);
}

最佳答案

拥有管理员权限并不能保证可以访问特定资源。事实上,可以创建一个主动拒绝管理员用户/组访问资源的 ACL。

管理员可以做的是 take ownership资源,然后修改 ACL,以便访问可用。如果你想这样做,你可以,但这会改变你文件的访问规则。

关于c# - 无论如何如何获得对Windows系统上所有文件的读取权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32639288/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com