var searcher = new ManagementObjectSearcher("\\\\.\\ROOT\\CIMV2", "SELECT * FROM Win32_LogicalShareSecuritySetting WHERE Name = \"Share\"");
var queryResult = searcher.Get();
foreach (ManagementObject findedItem in queryResult)
{
var caption = findedItem["Caption"];
InvokeMethodOptions options = new InvokeMethodOptions();
ManagementBaseObject outParamsMthd = findedItem.InvokeMethod("GetSecurityDescriptor", null, options);
ManagementBaseObject descriptor = outParamsMthd["Descriptor"] as ManagementBaseObject;
ManagementBaseObject[] dacl = descriptor["DACL"] as ManagementBaseObject[];
foreach (var baseObject in dacl)
{
var type = baseObject.Properties["AceType"].Value;
var mask = baseObject.Properties["AccessMask"].Value;
var flags = baseObject.Properties["AceFlags"].Value;
}
Комментариев нет:
Отправить комментарий