如题,不知道怎么解决,上午问了微软,给个VB的方案,没有整明白,请大家帮忙看看!!
Dim strQuery
Dim strUserDN 
Dim strDomainDN
Dim oUser
 strUserDN = "OU=UserAccounts,DC=fareast,DC=corp,DC=microsoft,DC=com"
' ================================
' Get the users who has a mailbox
' ================================Set oConnection = CreateObject("ADODB.Connection")
Set oRootDSE = GetObject("LDAP://RootDSE")
Set oCommand  = CreateObject("ADODB.Command")
varDomainNC = oRootDSE.Get("DefaultNamingContext")
 
oConnection.Provider = "ADsDSOObject"
oConnection.Open "ADs Provider"strQuery = "<LDAP://" & strUserDN & ">;(&(objectClass=user)(mail=*));adspath,cn;subtree"oCommand.ActiveConnection = oConnection
oCommand.CommandText = strQuerySet RS = oCommand.Execute
while not RS.EOF
     Set objUser = GetObject(RS.Fields("adspath"))
     WScript.echo  objuser.EmailAddress    
     RS.MoveNext
Wend 

解决方案 »

  1.   

    什么是outlook邮件服务器?客户端的MS Outlook还是Exchange Server?
      

  2.   

    隔了这么长时间,还是没有搞出来!
    现在的做法是将通讯簿导入数据库中读取,但是这样要人为的去同步更新.
    真的没有人会直接读Exchange Server的通讯簿内容吗?
      

  3.   

    Exchange的数据肯定有办法读的,Exchange和Outlook都是采用一种类似IMAP的基于文件夹的数据存储方式,应该提供类似IMAP的操作接口的,你可以去MSDN看看。如果Exchange自己没有SDK,那么就看看Windows 2003 SDK里面有没有相关资料。
      

  4.   

    看看这篇文章:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wss/wss/_exch2k_using_ado_objects.asp是Exchange2000SDK里面的,提到如何用ADO(ASP中)打开Exchange的数据库。你可以看看Exchange2003SDK,里面应该有类似资料的。