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?
Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, 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.
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ß!”
Hallo bin gerade beim stöbern hier gelandet,
Interessant
gibt es auch die Möglichkeit den Text einer Datei als Body zu übernehmen?
Beim Scanner EPSON Workforce DS-1630 und Programm: “Document Capture Pro” funktioniert die Übernahme der gescannten Datei in das E-Mail von Outlook folgendermaßen:
AuftragsscanAuftragseinstellungen4.Senden
Ziel: Anwendung
BearbeitenUmbenennenEinstellname: Outlook
Durchsuchen:
C:Program FilesMicrosoft OfficeOffice 16Outlook.exe
Öffnen
Damit erscheint als Ort:
C:Program FilesMicrosoft OfficeOffice 16Outlook.exe
(zur Information: Bei mir so, weil Office 2016 und Windows 10).
Aktionsparameter Starten:
Benutzerdefiniert auswählen:
Eintrag: -c ipm.note /a %file
Vielen Dank erstmal für den tollen Beitrag!
Ich suche nun nach einer Möglichkeit, mehrere Anhänge einer neuen E-Mail mittels Kommandozeile zu übergeben. Optimalerweise alle Dateien, die in einem Ordner liegen.
Sowohl
> OUTLOOK.EXE -c IPM.Note /a “D:Bilder”
als auch
> OUTLOOK.EXE -c IPM.Note /a “D:Bilder*.*”
führt leider zur Fehlermeldung, dass es sich beim Anhang um einen Ordner handele, der nicht angehängt werden kann.
Eine Reihung mehrerer Anhangsdateien mittels
> OUTLOOK.EXE -c IPM.Note /a “D:BilderBild1.jpg” “D:BilderBild2.jpg”
oder
> OUTLOOK.EXE -c IPM.Note /a “D:BilderBild1.jpg” /a “D:BilderBild2.jpg”
führt leider auch nicht zum Erfolg. Erster Befehl bringt eine Fehlermeldung, zweiter führt dazu, dass nur die erste Datei angehängt wird.
Gibt es hierfür eine Möglichkeit?
Das Problem scheint zu sein, das der Parameter auf einen Anhang begrenzt ist.
Es gibt wohl die Möglichkeit, das via VBS-Skript zu lösen. Getestet habe ich das allerdings nicht.
Ein Beispiel siehe hier (Variante 3):
https://www.onestep2.at/blog/divers/outlook-2016-rechtsklick-senden-an-funktioniert-nicht-mehr
Inzwischen denke ich auch, dass man das nur über ein Skript lösen könnte. Enttäuschend, dass Outlook hier nach meinen Recherchen an der Kommandozeile nur einen Anhang zulässt.
Jedenfalls danke für den Link! Das sollte in die richtige Richtung führen.
Der Hinweis, dass /m nicht mit /a funktioniert, ist mind. seit Outlook 2013 falsch. Allerdings benutze ich es in der Reihenfolge /a “Anhang” /m “Empfänger?subject=Text”. Wenn der “Anhang” eine HTML-Datei ist, wird diese den Text der Mail (jedenfalls den HTML-Teil) ersetzen.