コード例 #1
0
        private void FillPermissionsPage(Dictionary <string, List <LwAccessControlEntry> > SdDacls)
        {
            if (lvPermissions.Items.Count != 0)
            {
                return;
            }

            foreach (string key in SdDacls.Keys)
            {
                List <LwAccessControlEntry> daclInfo = SdDacls[key];

                foreach (LwAccessControlEntry ace in daclInfo)
                {
                    string sAccessString = _securityDescriptor.GetKeyPermissionName(ace.AccessMask);
                    if (!String.IsNullOrEmpty(sAccessString))
                    {
                        string[] strItems = new string[] {
                            Convert.ToInt32(ace.AceType) == 0 ? "Allow" : "Deny",
                            ace.Username,
                            sAccessString,
                            "",
                            Properties.Resources.FolderApplyToText
                        };
                        ListViewItem lvItem = new ListViewItem(strItems);
                        lvItem.Tag = daclInfo;
                        lvPermissions.Items.Add(lvItem);
                    }
                }
            }
        }