Partager via


AmbiguousNames Property

AmbiguousNames Property

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

A reference to an Addressees collection containing all addressees that match the ambiguous criteria used to resolve a particular addressee. This property is read-only.

Applies To

IAddressee Interface

Type Library

Microsoft CDO for Exchange 2000 Library

DLL Implemented In

CDOEX.DLL

Syntax

[Visual Basic]Property AmbiguousNames As IAddressees

[C++]HRESULT get_AmbiguousNames(IAddressees** pVal);

Parameters

Remarks

When you attempt to resolve an addressee to a LDAP object using DisplayName Property only, there may be more than one object in the directory that matches the name. In such cases, an AmbiguousNames collection is populated with each object that matches the ambiguous criteria. For example, you may set the DisplayName Property to "Run Liu" and call CheckName Method. There may be three directory objects that match this display name. In this case, the ResolvedStatus Property would be equal to the CdoResolvedStatus Enum (2) enumerated value, and the IAddressee.AmbiguousNames collection would contain three Addressee objects. You could then use this information with an interactive user, prompting them to select the intended addressee from the list of the addressees.

Example

<Job id="resolveaddressee">

<reference object="cdo.message"/> <reference object="adodb.connection"/>

<script language="VBScript">

Dim iPer Set iPer = getCurrentPersonObject_ro

Wscript.Echo "User E-Mail Address:" wscript.echo iPer.Email

WScript.Echo "User Mailbox folder URL: " Wscript.Echo iPer.GetInterface("IMailbox").BaseFolder

Function getCurrentPersonObject_ro()

Dim Info Set Info = CreateObject("ADSystemInfo") Dim InfoNT Set InfoNT = CreateObject("WinNTSystemInfo") Dim iPer Set iPer = CreateObject("CDO.Person") Dim iAddr Dim iAddr2 Set iAddr = CreateObject("CDO.Addressee")

iAddr.EmailAddress = LCase(InfoNT.UserName) & "@" & Info.DomainDNSName

' Search by binding to an LDAP server in current domain. If Not iAddr.CheckName("LDAP://" & Info.DomainDNSName) Then ' Handle Ambiguous names here For Each iAddr2 in iAddr.AmbiguousNames wscript.echo iAddr2.DisplayName wscript.echo iAddr2.EmailAddress Next Else

' Note that this is for illustration purposes only as ' We already have the server-less LDAP URL to the current user: ' "LDAP://" & Info.UserName ' Or, ' "LDAP://" & Info.DomainDNSName & "/" & Info.UserName

Wscript.Echo "LDAP://" & Info.DomainDNSName & "/" & Info.UserName Wscript.Echo iAddr.DirURL

iPer.DataSource.Open iAddr.DirURL End If

Set getCurrentPersonObject_ro = iPer

End Function </script> </Job>

Send us your feedback about the Microsoft Exchange Server 2003 SDK.

Build: June 2007 (2007.618.1)

© 2003-2006 Microsoft Corporation. All rights reserved. Terms of use.