0
如何獲得其與「所有人」 privilage 在當前系統中創建獲取其爲「所有人」共享該文件夾的名稱
如何獲得其與「所有人」 privilage 在當前系統中創建獲取其爲「所有人」共享該文件夾的名稱
您可以使用文件夾的名稱和位置DirectoryInfo.GetAccessControl得到
獲取一個封裝了訪問控制 列表(ACL)條目當前 DirectoryInfo對象描述的目錄DirectorySecurity對象。
對於系統中的單個目錄。剩下的就是實現對系統中所有存儲器迭代並調用它的問題。
例子:
string[] drives = System.Environment.GetLogicalDrives();
foreach (string dr in drives)
{
System.IO.DriveInfo di = new System.IO.DriveInfo(dr);
if (!di.IsReady)
{
continue;
}
System.IO.DirectoryInfo root = di.RootDirectory;
var directories = root.GetDirectories("*.*", System.IO.SearchOption.AllDirectories);
foreach(var dirInfo in directories) {
var diAccess = dirInfo.GetAccessControl(..) ;
}
}
完整的示例和解釋可以發現:How to: Iterate Through a Directory Tree
這只是一個草圖,將其更改爲滿足您的需求。
看看[這個問題]的答案(http://stackoverflow.com/questions/1410127/c-sharp-test-if-user-has-write-access-to-a-folder)。您應該可以根據自己的需要來實現它。 –
'icacls c:\/foundid everyone/T'然後捕獲輸出 – Steve