06-09-2015, 02:51 AM
Macro Get active directory computers
ARRAY(str) a=CsFunc("")
out a
#ret
//C# code
using System;
using System.Collections.Generic;
using System.DirectoryServices;
public class Test
{
public static string[] GetComputers()
{
;;;;List<string> ComputerNames = new List<string>();
;;;;DirectoryEntry entry = new DirectoryEntry("LDAP://YourActiveDirectoryDomain.no");
;;;;DirectorySearcher mySearcher = new DirectorySearcher(entry);
;;;;mySearcher.Filter = ("(objectClass=computer)");
;;;;mySearcher.SizeLimit = int.MaxValue;
;;;;mySearcher.PageSize = int.MaxValue;
;;;;foreach(SearchResult resEnt in mySearcher.FindAll())
;;;;{
;;;;;;;;//"CN=SGSVG007DC"
;;;;;;;;string ComputerName = resEnt.GetDirectoryEntry().Name;
;;;;;;;;if (ComputerName.StartsWith("CN="))
;;;;;;;;;;;;ComputerName = ComputerName.Remove(0,"CN=".Length);
;;;;;;;;ComputerNames.Add(ComputerName);
;;;;}
;;;;mySearcher.Dispose();
;;;;entry.Dispose();
;;;;return ComputerNames.ToArray();
}
}