Outlook 2010 Marco Empfängermailadresse(n) auslesen - nicht Anzeigename

Mitglied: joni2000de

joni2000de (Level 1) - Jetzt verbinden

14.12.2015, aktualisiert 17.12.2015, 934 Aufrufe, 10 Kommentare

Hallo Admins,
ich versuche mittels Outlook-Makro die Empfängeradresse eingehender Mails zu ermitteln. Leider wird mir dort immer nur der Anzeigename dargestellt. Gibt es eine Möglichkeit die nackte Mailadresse zu ermitteln? Meine Versuche bisher waren leider erfolglos. Ich zähle auf euch.
Danke & Gruß
Joni
Mitglied: colinardo
14.12.2015, aktualisiert um 21:45 Uhr
Hallo Joni,
In einem kompletten Kontext mit dem NewMailEx-Event welches auf alle neue Mails reagiert könnte das so aussehen:
Durchlaufe einfach die Recipients Collection des MailObjects und lass dir die Adressen anzeigen.

Grüße Uwe
Bitte warten ..
Mitglied: joni2000de
15.12.2015, aktualisiert um 22:51 Uhr
Hallo Uwe,
dein Code liefert mir das gleiche Ergebnis wie einer von meinen (habe zwischenzeitlich schon mehrere Versuche hinter mir). Ich kriege immer die AD-Daten geliefert.
zB
/O=XXXXXXX/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHFXXXXXXXX)/CN=RECIPIENTS/CN=User7XXXXXX
Muss ich die Empfängeradresse auflösen (wenn ja wie mache ich das am einfachsten?; ist der Eintrag dann auch immer eindeutig auch wenn ein Konto mehrere Mailadressen hat?)? Kann es sein, dass Outlook in Kombination mit Exchange die "nackte Mailadresse" von den Exchange bekannten Empfängern gar nicht enthält?
rec.Address liefert obigen Eintrag
rec liefert den Anzeigename

Edit:
Ich habe eine Mail an eine Alias-Adresse geschickt. Diese wird wie die Hauptadresse aufgelöst. Das ist somit keine Lösung, da ich den Original-Empfänger ermitteln möchte. Im Mail-Header steht die richtige Adresse drin. Mich interessieren auch nicht alle Mail-Empfänger aus dem to, cc oder bcc Feld sondern nur die EINE Mailadresse die diese vorliegende Mail effektiv erhalten hat. Komme ich an diese Mailadresse überhaubt ran?

Falls du noch eine Idee hast, bitte gerne.
Danke für deine Hilfe.
Gruß Joni
Bitte warten ..
Mitglied: colinardo
15.12.2015, aktualisiert um 22:51 Uhr
Jaaaaa, das es hier um einen Exchange geht ging leider nicht aus deinem Post hervor. Bin leider gerade noch länger unterwegs. Poste dir morgen dann im Laufe des Tages die Lösung für den Exchange.

Grüße Uwe

P.s. so aus dem Kopf heraus solltest du die SMTP-Adresse via PropertyAccessor und der entsprechenden MAPI Eigenschaft abfragen können

Bitte warten ..
Mitglied: joni2000de
15.12.2015, aktualisiert um 23:12 Uhr
Hallo Uwe,
habe gerade oben noch etwas ergänzt. Dass Exchange hier so einen Unterschied macht, war mir bis gerade leider noch nicht klar. Hätte ich mir aber denken können. Ich zähle auf dich :-) face-smile
Unter tags komme ich sowieso nicht gut zum testen. Nur kein Stress.
Danke & Gruß Joni

Edith:
rec.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x39FE001E;)"
Hilft leider auch nicht wirklich. Bei einer "richtigen" Adresse wird diese aufgelöst und angezeigt, bei einer Aliasadresse wird aber die dazugehörige "richtige" Adresse geliefert. => Problem da tlw. Alias-Adressen verwendet werden
Wenn die Mail nur als bcc einlangt wird die Mailadresse gar nicht berücksichtigt sondern die sichtbare Adresse angezeigt => für mich kein Problem, da die Mails nicht in bcc einlagen
Das Thema mit der EINEN Mailadresse aus dem Mailheader bleibt. Die ist diejenige die mich primär interessiert. Mit dieser Methode wären theoretisch Mehrfachtreffer möglich für die es wieder eine Logik braucht.
Bitte warten ..
Mitglied: colinardo
15.12.2015, aktualisiert um 22:58 Uhr
Über den PropertyAccessor kommst du an alle Eigenschaften der Mail muss nur die passende morgen raussuchen ...s. Beispiel oben.
Wenn du willst kannst dich ja schon mal selbst versuchen mit dem Hinweis ;-) face-wink
Bitte warten ..
Mitglied: joni2000de
15.12.2015 um 23:47 Uhr
Leider erfolglos :-( face-sad
Bitte warten ..
Mitglied: colinardo
LÖSUNG 16.12.2015, aktualisiert 17.12.2015
Das Problem ist das wenn man z.B. über OWA oder einen Outlook-Client intern eine Mail verschickt löst Exchange den Alias automatisch zur Hauptadresse des Postfachs auf und schreibt diese Hauptadresse auch in den TO: Mailheader, dagegen kannst du nichts machen.

Wenn du die tatsächlichen Adressen aus dem TO: Mailheader brauchst hier eine Methode zum Extrahieren der Mailadressen aus dem Transportheader
Grüße Uwe
Bitte warten ..
Mitglied: joni2000de
17.12.2015 um 00:47 Uhr
Hallo Uwe,
zuerst nochmal danke.
Das richtige Schema hatte ich gefunden (0x007D001E) nur konnte ich nichts damit anfangen.
Der Code liefert zwar immer noch nicht genau das was ich mir gewünscht habe, aber damit kann ich arbeiten. Ich habe mir regex angesehen. Ist noch etwas verwirrend so auf die Schnelle, scheint aber ganz hilfreich zu sein. Ich habe es aber dann doch ohne umgesetzt (werde es mir aber dann noch in Ruhe ansehen).
Dein
ist nicht optimal, da bei mehreren Mailadressen, sprich wenn im Header ein Zeilenumbruch vorhanden ist, nur die Adressen der 1. Zeile berücksichtigt werden.

Ich habe das bei mir jetzt so gelöst, dadurch habe ich auch die cc-Adressen gleich mit dabei.


Das hat bei meinen Test immer geklappt. Jetzt muss ich halt im Code prüfen, welche der Mailadressen die "meine" ist.
Bin wieder etwas gescheiter dank deiner Hilfe.
Schöne Grüße
Joni
Bitte warten ..
Mitglied: colinardo
17.12.2015, aktualisiert um 10:14 Uhr
Zitat von @joni2000de:
Dein
ist nicht optimal, da bei mehreren Mailadressen, sprich wenn im Header ein Zeilenumbruch vorhanden ist, nur die Adressen der 1. Zeile berücksichtigt werden.
Schön das du meinen Test bestanden hast :-) face-smile Mach ich ab und zu ob die Leute sich mit dem Code auch beschäftigen, der Pattern müsste natürlich so lauten:
Jetzt muss ich halt im Code prüfen, welche der Mailadressen die "meine" ist.
Kannst du ja schnell mit einem Dictionary-Object machen.

Als denn...
Grüße Uwe
Bitte warten ..
Mitglied: joni2000de
18.12.2015 um 11:11 Uhr
So so, da habe ich ja nochmal Glück gehalbt. Die Prüfung ist auch schon erledigt. Läuft soweit alles.
Ich habe mich noch mit meinem Internetprovider (ist ein richtiger Guru) unterhalten. Das Thema mit der eindeutigen Mailadresse lässt sich nicht lösen, da jeder Mailserver (im Speziellen Exchange) hier unterschiedlich reagiert. Die besten sind noch die Linux-Server. Da scheint dann unsere Lösung eh die einzige zu sein.
Nochmal danke.
Gru8 Joni
Bitte warten ..
Heiß diskutierte Inhalte
Off Topic
Realistische Gehaltsvorstellung für eine "IT-Allroundkraft"
gelöst JiggyLeeVor 1 TagFrageOff Topic23 Kommentare

Hallo an alle, ich hege momentan den Wunsch mich von der alten verstaubten Behörden Bürokratie und langweiliger Aufgaben los zu lösen und in einem ...

LAN, WAN, Wireless
Starlink im Unternehmen?
0xFFFFVor 9 StundenFrageLAN, WAN, Wireless28 Kommentare

Guten Morgen Admins, leider leiden wir darunter, dass wir uns hier in DE noch in einem Entwicklungsland was die Internetanbindung angeht, sehr. Nun kam ...

Microsoft
Datenkrake - Browser
DennisWeberVor 1 TagErfahrungsberichtMicrosoft10 Kommentare

Hallo zusammen, ich empfehle euch mal definitiv in "Temp" Verzeichnis eures Browsers zu schauen. Es war für mich erschreckend, wie viele wichtige Dokumente und ...

Netzwerkmanagement
Sicherheitsrisiken Synology DS Admin Konto
RitchtoolsVor 1 TagFrageNetzwerkmanagement6 Kommentare

Hallo Zusammen, ich habe die Pflege von einem Firmen NAS übernommen (Synology) es sind mehrere Rechner im Netzwerk die auf Daten zugreifen. Leider hat ...

Off Topic
Klimaanlage im Serverraum
gelöst imebroVor 5 StundenFrageOff Topic19 Kommentare

Hallo, wir haben einen kleinen Serverraum (viell. 5 - 6 m²), in dem ein Serverschrank steht. Der Raum hat kein Fenster!!! Darin befinden sich ...

Grafikkarten & Monitore
Monitorhalterung mit 80cm Armlänge
ben1300Vor 1 TagFrageGrafikkarten & Monitore7 Kommentare

Guten Abend ! ich bin auf der Suche nach einer Monitorhalterung, im besten Fall ohne Bohrung für einen 28" Monitor (Vesa Halterung). Nun kommt ...

Cloud-Dienste
Cloud PBX bzw. IP Telefon für Ausland
decehakanVor 1 TagFrageCloud-Dienste3 Kommentare

Hallo Zusammen, Ich suche Cloud Telefon ( Cloud PBX, IP-Telefon), sodass ich von Ausland aus über eine deutsche Rufnummer auf mein Handy erreichbar bin. ...

Windows 10
Windows 10 hängt bei Neustart immer bei "Bitte warten" über Stunden
gelöst Odde23Vor 6 StundenFrageWindows 1023 Kommentare

Ich habe seit längerem, um genau zu sein seit gut einem Jahr, da wurde der Rechner gekauft, das Problem, dass der Rechner bei einem ...