internal OU(SearchResultEntry entry) : base(entry) { Users = new string[0]; Computers = new string[0]; ChildOus = new string[0]; RemoteDesktopUsers = new GenericMember[0]; LocalAdmins = new GenericMember[0]; DcomUsers = new GenericMember[0]; PSRemoteUsers = new GenericMember[0]; Links = new GPLink[0]; }
public List <string> GetApplicableGPO() { var output = new List <string>(); if (string.IsNullOrEmpty(GPLink)) { return(output); } string[] gplinks = GPLink.Split(']'); foreach (string gplink in gplinks) { if (string.IsNullOrEmpty(gplink.TrimEnd())) { continue; } string[] gpodata = gplink.Split(';'); if (gpodata.Length != 2) { Trace.WriteLine("invalid gpolink1:" + gplink); continue; } int flag = int.Parse(gpodata[1]); if (flag == 1) { continue; } if (!gpodata[0].StartsWith("[LDAP://", StringComparison.InvariantCultureIgnoreCase)) { Trace.WriteLine("invalid gpolink2:" + gplink); continue; } string dn = gpodata[0].Substring(8); output.Add(dn); } return(output); }