Nachfolgend erfahren sie, wie man eine zuvor über den PDF Drucker erzeugte PDF-Datei automatisch als Anhang an eine E-Mail in Outlook anfügt.

Weitere Beispiele zum Versenden von erzeugten PDF Dateien via eMail finden sie zu diesem Thema auch hier.... Der Unterschied bei diesen weiterführenden Beispielen ist, das diese bei jedem PDF Druck automatisch einen eMail-Versand (via SMTP, Outlook etc.) durchführen oder zumindest vorbereiten. Bei den Beispielen auf dieser Seite hat man auch die Option nur wenn der Anwender es möchte, einen Mailversand über Microsoft Outlook anzustoßen.

Erzeugtes PDF per E-Mail mit Outlook versenden (für Anwender)

Der PDF Drucker bietet über das Setzen eines "Häckchens" im Druckdialog oder auch fest als Vorgabewert über den Optionen Dialog des 7-PDF Printers die Möglichkeit, nach erfolgreicher PDF Erzeugung Outlook zu starten und das PDF automatisch an eine neue eMail anzufügen. Voraussetzung dafür ist freilich, das sie Outlook 365 oder älter auf ihrem System als E-Mail Anwendung nutzen.

Den Optionen Dialog können sie unter Windows 10 über die Windows 10 Suche so aufrufen...tippen sie ins Suchfeld einfach 7-PDF Printer Optionen ein...

Nach dem Starten eines PDF Drucks aus einer Anwendung wie beispielsweise Word (über Menüeintrag Datei -> Drucken... -> 7-PDF Printer") erscheint der Druckdialog unseres Druckers wie in nachfolgender Abbildung gezeigt:

Druckdialog des 7-PDF Printers zeigt durch Anwender gesetztes Häckchen bei der Einstellung E-Mail
Druckdialog des 7-PDF Printers zeigt durch Anwender gesetztes Häckchen bei der Einstellung E-Mail

Der Anwender entscheidet nun eine Übergabe des zu erzeugenden PDFs direkt an Outlook, indem er ein Häckchen bei der Einstellung E-Mail setzt. Nach der PDF Erzeugung öffnet sich automatisch Outlook bzw. eine neue E-Mail mit der gerade erzeugten PDF Datei als Anhang. Die zuvor erzeugte PDF Datei befindet sich selbstverständlich parallel auch noch einmal am gewählten Speicherort des Anwenders.

Druckdialog des 7-PDF Printers zeigt durch Anwender gesetztes Häckchen bei der Einstellung E-Mail
Eine Outlook E-Mail mit angefügter PDF Datei im Anhang der Mail

Über den Optionen Dialog des 7-PDF Druckers kann man dieses Häckchen auch fest vorgeben (Tab/Reiter "Allgemein") oder auch noch weitere Angaben an eine Outlook E-Mail übergeben. Der dafür vorgesehenen Tab/Reiter lautet "E-Mail". Beispielweise kann man eine E-Mail Adresse, einen Betreff oder auch einen Nachrichtentext (HTML) vorgeben der dann an die erzeugte Outlook E-Mail übergeben wird (MAPI). Der nachfolgende Screenshot seit die von uns definierten Vorgabewerte. Speichern nicht vergessen!

Der Tab/Reiter 'E-Mail' mit vordefinierten Werten
Der Tab/Reiter "E-Mail" mit vordefinierten Werten

Nun stoßen wir erneut aus Microsoft Word 365 einen Testdruck über 7-PDF Printer an um ein PDF zu erzeugen, denn wir wollen überprüfen ob sich automatisch eine neue Outlook E-Mail mit dem PDF und den zuvor fest vorgegebenen Werten öffnet. Los gehts...nachdem wir also über "Drucken" einen Druckjob an 7-PDF Printer gegeben haben, sollte sich der Druckdialog von 7-PDF Printer automatisch öffnen, wir prüfen die Einstellungen und "Speichern" das PDF ab.

Perfekt...Da wir im Druckdialog den Hacken gesetzt gelassen haben bei "Nach Erstellung das PDF öffnen", öffnet sich Acrobat Reader mit dem neu aus Microsoft Word erzeugten PDF und einen Moment später wird auch automatisch eine neue Outlook E-Mail mit PDF Dateianhang angezeigt. Prima, die festen Werte aus dem Tab/Reiter "E-Mail" aus dem 7-PDF Printer Optionen Dialog wurden auch gleich übernommen.

Outlook E-Mail mit PDF Dateianhang öffnet automatisch
Outlook E-Mail mit PDF Dateianhang öffnet automatisch

Mail versenden mit VBScript und Outlook (für Experten)

Im Gegensatz zu unserer ersten oben beschriebenen Möglichkeit kann man auch via VBScript einen Mailversand mit Outlook initiieren. Der Vorteil hier ist, das man als Programmierer Einfluss auf den Mailversand nehmen kann. Also beispielsweise weitere Daten aus Datenbanken, oder per LDAP abgreifen könnte, um damit den Mailversand gezielt weiter dynamisch steuern zu können. Das hier gezeigte Beispiel geht nicht so weit, aber gibt Programmierern einen Einstieg in die Möglichkeiten die 7-PDF Printer bietet!

    Option Explicit
    
    Dim fn
    Dim ol, ns, newMail
    Const olMailItem = 0
    
    Rem -- Check that there is the right number of arguments
    If WScript.Arguments.Count <> 1 Then 
            Msgbox "Wrong arguments"
            Wscript.Quit
    End If
    
    Rem -- Get the file name from the command line
    fn = WScript.Arguments.Item(0)
    
    Rem -- Get access to the Outlook application
    Set ol = WScript.CreateObject("Outlook.Application")
    Set ns = ol.getNamespace("MAPI")
    
    Rem -- Create the new mail
    Set newMail = ol.CreateItem(olMailItem)
    
    Rem -- Attach the file
    newMail.Attachments.Add fn
    
    Rem -- Display the new message
    newMail.Display
    
    Rem -- Clean up
    Set newMail = Nothing
    Set ns = Nothing
    Set ol = Nothing
    

Speichern Sie den Code in einer Skriptdatei unter:

C:\Program Files\7-PDF\PDF Printer\EmailOnSuccess.vbs

Wichtig: Bitte dieses Script NICHT in den Macros Ordner des PDF Druckers kopieren, dann klappt die Ausführung nicht! Jetzt können Sie den Drucker das Skript ausführen lassen, wenn die PDF-Datei erfolgreich erstellt wurde. Fügen Sie einer Konfigurationsdatei die folgenden zwei Codezeilen hinzu. In diesem Beispiel können wir sie in global.ini platzieren.

RunOnSuccess=cscript.exe "C:\Program Files\7-PDF\PDF Printer\EmailOnSuccess.vbs" "%1"
RunOnSuccessMode=Normal

Dadurch wird das Skript nach einer erfolgreichen PDF Erzeugung des PDF Druckers ausgeführt, und das neue PDF-Dokument als Parameter an das VB Script übergeben. Wichtig: Sie müssen in der Registry die Einstellung AllowExecute auf 1 setzen damit die Ausführung des VBScript Macros nicht durch einen Runtime Error quittiert wird. Mehr zu AllowExecute und wie sie es aktivieren, finden sie hier...

Nicht über global.ini sondern über den Optionen Dialog als Anwender "bedarfsweise" ausführen

Wenn man es wie oben beschrieben in die global.ini legt, dann ist diese Konfiguration global gültig. Bei jedem PDF Druck würde dann EmailOnSuccess.vbs ausgeführt werden. Zudem verlangt die Konfiguration über eine global.ini das Setzen der Registry Einstellung AllowExecute, bzw. ist sie hier zwingend nötig. Will man das nicht, kann man auch über den 7-PDF Printer Optionen Dialog als Anwender nur bei "Bedarf" eine Ausführung von EmailOnSuccess.vbs konfigurieren. Dazu legt man beispielsweise einfach einen Optionssatz mit der Bezeichnung "An Outlook senden" an, und für diesen neuen Optionssatz hinterlegt man dann noch im Tab/Reiter "Ausführen" cscript.exe und das VBScript EmailOnSuccess.vbs. Also !cscript.exe "C:\Program Files\7-PDF\PDF Printer\EmailOnSuccess.vbs" "%1"

Die nachfolgenden Abbildungen zeigen die nötigen Steps im Optionen Dialog des Druckers die dazu nötig sind:


Optionssatz anlegen
1. Schritt: Optionssatz "An Outlook senden" anlegen


Optionssatz angelegt
2. Schritt: Optionssatz angelegt und geladen...


Optionssatz angelegt
3. Schritt: EmailOnSuccess.vbs im Tab/Reiter "Ausführen" hinterlegen und Speichern nicht vergessen!

Den Optionen Dialog können sie unter Windows 10 über die Windows 10 Suche so aufrufen...tippen sie ins Suchfeld einfach 7-PDF Printer Optionen ein...

ShellScript Modus aktivieren

Will man vermeiden das eine DOS Box kurzzeitig angezeigt wird, aktiviert man den ShellScript Modus durch ein vorangestelltes Ausrufezeichen -!- und setzt den Mode auf versteckt, also so:

RunOnSuccess=!cscript.exe "C:\Program Files\7-PDF\PDF Printer\EmailOnSuccess.vbs" "%1"
RunOnSuccessMode=hide

Sie können dieses Skript leicht ändern, um die PDF-Datei nach dem Anhängen an eine E-Mail zu löschen, wenn sie das PDF nach dem Senden nicht auf dem System speichern möchten.

Weiterführende Beispiele

Das Thema forcieren wir in diesem umfangreicheren Beispiel weiter, und nutzen die Outlook MAPI direkt mit 7-PDF Printer. Außerdem zeigen wir auf wie man einen Exchange Server oder auch einen externen IMAP Dienst wie Googlemail zum Mailversand mit 7-PDF Printer nutzen könnte. Die aufgeführten Beispiele sollen ihnen als Grundlage für eigene Lösungsansätze bieten.

LiveZilla Live Chat Software
Top