我正在为我的老板编写一个新程序,以取代他们目前使用的旧 VBS。
所以程序假设进入广告并收集所有员工的姓名和他们的电子邮件地址。我的问题是每个用户都分配了大约 60 个属性,但我的程序只提取了 32 个字段,其中一个是 CN,它是我需要的一半。当然,邮件不是要导入的属性之一。我在调试时也注意到,我认为只是从长岛分支机构引入员工,而不是从我不明白为什么的任何地方引入员工。任何帮助将不胜感激!!=D
using System;
using System.IO;
using System.Collections.Generic;
using System.Text;
using System.DirectoryServices;
using Microsoft.Office.Interop.Excel;
using System.DirectoryServices.ActiveDirectory;
namespace EmailListing
{
class Program
{
static void Main(string[] args)
{
DirectoryEntry adFolderObject = new DirectoryEntry("LDAP://OU=PHF Users,DC=phf,DC=inc");
DirectorySearcher adSearchObject = new DirectorySearcher(adFolderObject);
adSearchObject.SearchScope = SearchScope.Subtree;
adSearchObject.Filter = "(&(ObjectClass=user)(!description=Built-in*))";
foreach (SearchResult adObject in adSearchObject.FindAll())
{
//mail = adObject.Properties["mail"].ToString();
Console.Write(adObject.Properties["cn"][0]);
Console.Write(". ");
//Console.WriteLine(mail);
}
Console.WriteLine();
Console.ReadLine();
}
}
}