Outlook: Per CLI eine neue E-Mail erstellen
Sozusagen im Fahrwasser dieses Beitrags folgt nun als „Quasi-Plan-B“ zur MAPI die Möglichkeit neue E-Mails per Skript, Befehl oder Verknüpfung erstellen zu können.
Theoretisch und soweit man in der Registry erkennen kann wird mindestens folgender Befehl an Outlook gesendet, wenn man aus dem Kontextmenü des Explorers „Senden an – E-Mail-Empfänger“ auswählt:
"C:\Program Files\Microsoft Office 15\root\office15\outlook.exe" -c IPM.Note /mailto "%1"
Der Pfad zu Outlook variiert je nach Version. Nachfolgend wird der Pfad weg gelassen. Eine simple leere E-Mail wird mit
outlook.exe -c IPM.Note
erzeugt. Möchte man den Empfänger angeben dann idealerweise (siehe Anhang) so:
outlook.exe -c IPM.Note /m <E-Mail-Adresse>
Mit Anhang:
outlook.exe -c IPM.Note /m <E-Mail-Adresse> /a "<Pfad\Dateiname>"
Hinweis: Mit „/mailto“ funktionert „/a“ nicht!
Mit Betreff:
outlook.exe -c IPM.Note /m "<E-Mail-Adresse>&subject=Mein%20Betreff"
Mit Nachrichtentext:
outlook.exe -c IPM.Note /m "<E-Mail-Adresse>&subject=Mein Betreff&body=Mein Text"
Quellen:
ExtendOffice – How to create an Outlook new email with specified command line?
Schon immer Technik-Enthusiast, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen. Die Schwerpunkte liegen auf der Netzwerkinfrastruktur, den Betrieb von Servern und Diensten.
Hallo Andy,
vielen Dank für deine ausführliche Doku.
Habe einiges davon verwenden können, habe aber folgendes Problem.
Das Aufruf der Kommandozeile, z.B. outlook.exe -c IPM.Note /m „subject=Mein Betreff&body=Mein Text“ /a „“ funktioniert wunderbar, jedoch NUR wenn Outlook vorher NICHT gestartet ist. Wenn Outlook geöffnet ist, dann kommt die Fehlermeldung „Konnte Dateianhang nicht finden“.
Irgendeine Idee??
Lieben Dank Alex
Hallo Andy,
besten Dank für die Info.
Ich habe die einzelnen Optionen probiert und bin beim Betreff bzw. Nachrichtentext hängen geblieben.
Er hat mir immer alles in der Mailadresse angezeigt.
Im Web habe ich dann den entscheidenden Hinweis gefunden: & für subject= muss zu ?subject= werden
Beispiel:
outlook.exe /c ipm.note /m „someone@microsoft.com?subject=subject%20test&body=Email%20body%20test“
Referenz: https://stackoverflow.com/questions/248569/starting-outlook-and-having-an-email-pre-populated-from-command-line
Als Ergänzung
und der obige Kommentar wurde mit folgender Office-Version getestet:
Office 365 MSO (16.0.127.30.20144)
Die Parameter folgenden Regeln, die im für URLs im Browser gelten, erweitert auf ein externes Programm. Das bedeutet: Der Befehl „mailto:“ im Browser wird durch /m angegeben. Der Parameterbereich wird durch „?“ abgetrennt. Mehrere Parameter sind durch „&“ zu trennen.
Parameter können sein: cc, bcc, subject, body.
Egal ob Outlook oder Thunderbird, bei beiden funktioniert (man beachte die Position der Anführungszeichen):
start mailto:“jemand@example.com?cc=nochjemand@example.com&subject=Meine%20Mail&body=Hallo%20Du!%0AViel%20Spaß!“