globale adressliste MS Outlook

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von HenryV.

    globale adressliste MS Outlook

    Hallo zusammen,

    Ich suche nun schon wirklich ein halben Tag nach einer Möglichkeit.

    Meine Frage wäre erst einmal: Ist es grundsätzlich überhaupt möglich die globale adressliste von MS Outlook auszulesen?

    Ich bräuchte diese Info um zuschauen ob der eingegebene User überhaupt existiert in der globale adressliste.

    vielen lieben dank schon mal
    Habe noch nie danach geschaut, würde mich aber auch interessieren.
    Welche Daten hast du den zum überprüfen, ist der Name des 'eingegebenen Users' denn richtig geschrieben, bzw. wäre es eine Vorlage? Oder wäre der Name zu überprüfen wie bei der Funktion "Namen überprüfen"?
    Willst du auf die lokale Daten zugreifen, die Pro Client/Pro Nutzer hinterlegt werden?Was läuft im Hintergrund? Also welcher (Exchange-)Server?
    Option Strict On!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Drahuverar“ ()

    Klar geht das.

    VB.NET-Quellcode

    1. Private Sub EnumerateGAL(strName As String)
    2. Dim objOL As Outlook.Application = New Outlook.Application()
    3. Dim gal As Outlook.AddressList = objOL.Session.GetGlobalAddressList()
    4. For Each addrEntry As Outlook.AddressEntry In gal.AddressEntries
    5. If addrEntry.Name = strName Then
    6. MessageBox.Show("Gefunden!!")
    7. End If
    8. Next
    9. End Sub

    How to: Enumerate the Entries in the Global Address List
    Stark. Habe mich damit noch nie auseinander gesetzt, aber das ist super. Da kann ich demnächst mal wieder was basteln. :D
    Weißt du, ob man auf diese 'Namen überprüfen' -Funktion zugreifen kann über die Schnittstelle?
    Das würde dem TE sicherlich helfen, wobei das ja auch schon ein guter Wink in die Richtung ist.
    Option Strict On!
    Vielleicht so

    VB.NET-Quellcode

    1. Private Sub EnumerateGAL(strName As String)
    2. Dim objOL As Outlook.Application = New Outlook.Application()
    3. Dim gal As Outlook.AddressList = objOL.Session.GetGlobalAddressList()
    4. Dim exchUser As Outlook.ExchangeUser = gal.AddressEntries(strName).GetExchangeUser()
    5. If exchUser.Name = strName Then
    6. Debug.WriteLine("Gefunden: " & exchUser.Name + " " + exchUser.PrimarySmtpAddress)
    7. Else
    8. Debug.WriteLine(strName & " wurde nicht gefunden!")
    9. End If
    10. End Sub