2009-11-28 87 views
2

我正在建立一个csharp应用程序,我想在我的展望全局地址簿(当我点击To:from outlook gui时,同一个所有用户的下拉列表是这可能会得到这个progrmaticall?这里的安全要求是什么?获取访问Outlook的交换全球通讯录

回答

1

除了Outlook依赖关系之外,安全后果使我无法使用这种方法,因此,我最终在一个LDAP query的形式。另一个好处是,(在响应您的other question),你将能够提取联系人信息,因为这些信息存储在Active Directory中。

免责声明:它已经将近五年,因为我已经看过这个代码,所以我怕我不再完全理解查询。不过,希望这足以让你开始。

DirectoryEntry adFolderObject = new DirectoryEntry(); 
DirectorySearcher adSearcher = new DirectorySearcher(adFolderObject); 

adSearcher.SearchScope = SearchScope.Subtree; 
adSearcher.Filter = "(& (mailnickname=*) (| (&(objectCategory=person)(objectClass=user)(!(homeMDB=*))(!(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=user)(|(homeMDB=*)(msExchHomeServerName=*)))))"; 

foreach (SearchResult adObject in adSearcher.FindAll()) 
{ 
    Console.WriteLine("CN={0}, Path={1}", adObject.Properties["CN"][0], adObject.Path); 
}