我需要显示每个用户对服务器上共享文件夹中所有文件夹的权限
我尝试了各种解决方案,但是没有一个显示每个文件夹和子文件夹的用户权限
这是我当前正在使用的代码
public bool CheckFolderPermissions(string folderPath, TreeNode td)
{
{
DirectoryInfo dirInfo = new DirectoryInfo(folderPath);
try
{
DirectorySecurity dirAC =
dirInfo.GetAccessControl(AccessControlSections.All);
ad_treeView_trv.Nodes.Add(dirInfo.Name);
return true;
}
catch (PrivilegeNotHeldException)
{
return false;
}
}
应该显示文件夹目录(确实如此),但还需要显示每个文件夹的用户权限。
public void LoadDirectory(string Dir)
{
DirectoryInfo di = new DirectoryInfo(Dir);
//Setting ProgressBar Maximum Value
ad_progressBar_prg.Maximum = Directory.GetFiles(Dir, "*.*", SearchOption.AllDirectories).Length + Directory.GetDirectories(Dir, "**", SearchOption.AllDirectories).Length;
TreeNode tds = ad_treeView_trv.Nodes.Add(di.Name);
tds.Tag = di.FullName;
tds.StateImageIndex = 0;
LoadFiles(Dir, tds);
LoadSubDirectories(Dir, tds);
CheckFolderPermissions(Dir, tds);
}
public bool CheckFolderPermissions(string folderPath, TreeNode td)
{
{
DirectoryInfo dirInfo = new DirectoryInfo(folderPath);
try
{
DirectorySecurity dirAC = dirInfo.GetAccessControl(AccessControlSections.All);
ad_treeView_trv.Nodes.Add(dirInfo.Name);
return true;
}
catch (PrivilegeNotHeldException)
{
return false;
}
}
}
使用上述代码没有收到任何错误消息,但是与没有以上代码的情况相比,加载目录的时间似乎更长。
谢谢