我正在寻找有关如何在AD中创建邮件联系人的一些指导。这是来自SO Q#1861336的后续问题。
我要做的是将大量联系人对象添加到Active Directory中的OU中。我一直在使用CodeProject上的示例,但是他们只展示了如何创建新用户等。
如何使用c#创建联系人?它是否类似于创建新用户但具有不同的LDAP类型属性?
我的计划是运行enable-mailcontact cmdlet powershell脚本,以使Exchange 2010能够在GAL中查看联系人。
正如您在我的问题中所看到的,我通常不会处理c#或Active Directory,所以在我开始使用这个加载的枪之前,任何帮助/指针都会非常有用。
谢谢,
捐赠
答案 0 :(得分:4)
它类似于创建用户
只是我们“联系”而不是“用户”作为对象
这是一个脏代码(未经测试)
public string CreateContact(string ldapPath, string userName,
string userEmail)
{
try
{
string oGUID = string.Empty;
string connectionPrefix = "LDAP://" + ldapPath;
DirectoryEntry dirEntry = new DirectoryEntry(connectionPrefix);
DirectoryEntry newUser = dirEntry.Children.Add
("CN=" + userName, "contact");
newUser.Properties["DisplayName"].Value = userName;
//important attributs are
newUser.Properties["targetAddress"].Value = "SMTP:" + userEmail;
newUser.Properties["mailNickname"].Value = userName;
// I'm still trying to figureout what shoud I use here!
newUser.Properties["showInAddressBook"].Value = ???;
newUser.CommitChanges();
oGUID = newUser.Guid.ToString();
dirEntry.Close();
newUser.Close();
}
catch (System.DirectoryServices.DirectoryServicesCOMException E)
{
//DoSomethingwith --> E.Message.ToString();
}
return oGUID;
}
希望它可以帮到你