NameSpace.AutoDiscoverComplete event (Outlook)
Occurs after Microsoft Outlook has finished accessing the auto-discovery service of the Microsoft Exchange server that hosts the primary Exchange account and has the related information available in NameSpace.AutoDiscoverXml.
Syntax
expression. AutoDiscoverComplete
expression A variable that represents a 'NameSpace' object.
Remarks
This event is similar to the AutoDiscoverComplete event of the Accounts object. If there are multiple Exchange accounts defined in the current profile, use the AutoDiscoverComplete event of the Accounts object that specifies the particular account.
Example
NameSpace.AutoDiscoverXml is an XML string that is returned from the auto-discovery service of the Exchange server. The following code sample shows when this XML string is available during a normal Outlook session:
When the Application.Startup event occurs, if NameSpace.AutoDiscoverConnectionMode is not equal to olAutoDiscoverConnectionUnknown
When the AutoDiscoverComplete event occurs, if AutoDiscoverConnectionMode is not equal to olAutoDiscoverConnectionUnknown
Dim WithEvents Session As NameSpace
Dim LastAutoDiscoverXml As String
Dim LastAutoDiscoverConnectionMode As OlAutoDiscoverConnectionMode
Private Sub Application_Startup()
Set Session = Application.Session
If (Session.AutoDiscoverConnectionMode <> olAutoDiscoverConnectionUnknown) Then
LastAutoDiscoverXml = Session.AutoDiscoverXml
LastAutoDiscoverConnectionMode = Session.AutoDiscoverConnectionMode
DoAutoDiscoverBasedWork
End If
End Sub
Private Sub Session_AutoDiscoverComplete()
LastAutoDiscoverXml = Session.AutoDiscoverXml
LastAutoDiscoverConnectionMode = Session.AutoDiscoverConnectionMode
If LastAutoDiscoverConnectionMode <> olAutoDiscoverConnectionUnknown Then
DoAutoDiscoverBasedWork
End If
End Sub
Private Sub DoAutoDiscoverBasedWork()
' Do activity requires auto discover information
Dim displayName As String
Dim posStartTag, posEndTag As Integer
posStartTag = InStr(1, LastAutoDiscoverXml, "<DisplayName>")
posEndTag = InStr(1, LastAutoDiscoverXml, "</DisplayName>")
If (posStartTag > 1 And posEndTag > 1) Then
displayName = Mid(LastAutoDiscoverXml, posStartTag + 13, posEndTag - posStartTag - 13)
Debug.Print "DisplayName = " & displayName
End If
End Sub
See also
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.