Exemplo n.º 1
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);
        }