Outlook-Signatur mit Active Directory-Daten – VBS-Skript

Skripterstellung

Zunächst benötigen Sie ein VBS-Skript, das in Outlook Signaturen anfügt. Der unten stehende Beispielcode liest Anwenderdaten aus dem Active Directory aus. Diese Daten erscheinen anschließend in der Signatur. Das Skript fügt die Signatur in neuen E-Mails und Antworten an.

On Error Resume Next  Set objSysInfo = CreateObject("ADInformation")  strUser = objSysInfo.UserName Set objUser = GetObject("LDAP://" & strUser) If objUser Is Empty Then _  MsgBox "No connection with LDAP information.", _  vbCritical, "Error": Exit Sub  strName = objUser.FullName strTitle = objUser.Title strDepartment = objUser.Department strCompany = objUser.Company strPhone = objUser.telephoneNumber  Set objWord = CreateObject("Word.Application")  Set objDoc = objWord.Documents.Add() Set objSelection = objWord.Selection  Set objEmailOptions = objWord.EmailOptions Set objSignatureObject = objEmailOptions.EmailSignature  Set objSignatureEntries = objSignatureObject.EmailSignatureEntries  ' Beginning of signature block  objSelection.TypeText strName & ", " & strTitle objSelection.TypeParagraph() objSelection.TypeText strDepartment objSelection.TypeParagraph() objSelection.TypeText strCompany objSelection.TypeParagraph() objSelection.TypeText strPhone  ' End of signature block  Set objSelection = objDoc.Range()  objSignatureEntries.Add "AD Signature", objSelection objSignatureObject.NewMessageSignature = "AD Signature" objSignatureObject.ReplyMessageSignature = "AD Signature"  objDoc.Saved = True objWord.Quit 

Den Code kopieren Sie einfach in einen Texteditor (z.B. Windows Notepad) und speichern ihn mit VBS-Dateierweiterung.

Zum Test führen Sie das Skript auf einer Workstation mit installiertem Outlook (stellen Sie sicher, dass Outlook nicht grade ausgeführt wird) aus. Sobald Sie Outlook öffnen und eine neue Nachricht erstellen, sollte sie eine Signatur enthalten, welche dem nachstehenden Beispiel ähnelt:

Outlook: Neue E-Mail mit geskripteter Signatur

Zum Anpassen der Signatur ändern Sie den Skriptcode zwischen ‘ Beginning of signature block und ‘ End of signature block. Mal angenommen, die E-Mail-Adresse des Anwenders soll am Ende der Signatur erscheinen. Dazu fügen Sie in den Signaturcode folgende Zeile ein:

objSelection.TypeParagraph() objSelection.TypeText strEmail 

Der Signaturcode sieht im Resultat wie folgt aus:

' Beginning of signature block  objSelection.TypeText strName & ", " & strTitle objSelection.TypeParagraph() objSelection.TypeText strDepartment objSelection.TypeParagraph() objSelection.TypeText strCompany objSelection.TypeParagraph() objSelection.TypeText strPhone objSelection.TypeParagraph() objSelection.TypeText strEmail  ' End of signature block 

Um in die Signatur statischen Text einzufügen, also solchen, der nicht aus dem Active Directory gezogen wird, ersetzen Sie den Platzhalterteil im Befehl objSelection.TypeText (z.B. strEmail) durch Ihren Text in Anführungszeichen. Das nachstehende Beispiel enthält einen zusätzlichen Umweltschutz-Disclaimer:

' Beginning of signature block  objSelection.TypeText strName & ", " & strTitle objSelection.TypeParagraph() objSelection.TypeText strDepartment objSelection.TypeParagraph() objSelection.TypeText strCompany objSelection.TypeParagraph() objSelection.TypeText strPhone objSelection.TypeParagraph() objSelection.TypeText strEmail objSelection.TypeParagraph() objSelection.TypeText "Please consider the environment before printing this message."  ' End of signature block 

Verteilung der Signatur via Gruppenrichtlinie

Um das Skript automatisch auf alle Workstations in der Organisation zu pushen, bedient man sich am besten einer Gruppenrichtlinie. Dadurch bekommt jeder Anwender seine Signatur zugeteilt, sobald er sich an seinem PC einloggt.

Zunächst melden Sie sich an Ihrem Server an und klicken Sie auf den Menü-Button Start, Administrative Tools, Group Policy Management. Alternativ tippen Sie den Befehl gpmc.msc in das Suchfeld unter Start-Menü ein. Das Hauptfenster der GPO-Konsole wird geöffnet:

Group Policy Management

Links erweitern Sie das Verzeichnis mit dem Namen Ihres Servers, Group Policy Objects. Mit der rechten Maustaste klicken Sie auf Default Domain Policy und gehen Sie auf Edit.

Domain Policy Objects

In dem Group Policy Management Editor links erweitern Sie User Configuration, Policies, Windows Settings, und gehen Sie auf Scripts (Logon/Logoff).

Group Policy Management Editor

Als Nächstes klicken Sie 2x auf die Logon-Option rechts, um das Fenster Logon Properties zu öffnen. Klicken Sie auf den Button Show Files…, um den Ordner mit Skripten zu öffnen. Kopieren Sie Ihr VBS-Skript in den Ordner. Im Fenster Logon Properties klicken Sie auf den Button Add…, Browse… und wählen Sie das neue Skript aus.

Logon Properties

Ihre Einstellungen bestätigen Sie mit OK.

Das war’s schon – sobald sich Ihre User an deren Workstations anmelden, greift das Skript und hängt in Outlook eine einheitiche Signatur mit Absenderdaten aus dem AD an.

Einschränkungen und wie man sie umgeht

Die Methode erweist sich als praktisch, sie hat allerdings einige Makel:

  • Anwender können ihre Signaturen bearbeiten, sodass der einheitliche Look Ihrer Geschäftskorrespondenz ausgehebelt wird.
  • Diese Signaturen sind nur in Outlook für Windows verfügbar.
  • Jede Änderung in der Signatur erfordert, dass sich alle User ab- und wieder anmelden, damit das Skript neu geladen wird und das neue Format greift.
  • Die Anpassung des Formats ist ein wenig aufwändig und erfordert Programmierkenntnisse.
  • Der Vorgang erfordert administrativen Zugang zum Server.
  • Es gibt keine Möglichkeit, die Custom- / Extension-Attribute oder bedingte Platzhalter zu verwenden, um die Integration mit den Tools zum Messen der Kundenzufriedenheit zu automatisieren.
  • Diese Methode wurde nicht mit LDAPS getestet. Sie können aber frei prüfen, ob sie mit dem Port 636 funktioniert.

Diese Hürden lassen sich mit Lösungen wie die CodeTwo Exchange Rules, CodeTwo Exchange Rules Pro (für den lokalen Exchange Server) oder CodeTwo Email Signatures for Office 365 (für Microsoft 365) überwinden. Sie bieten dem Anwender viele zusätzliche Vorteile, wie z.B. eine leicht zu bedienende Oberfläche für Signaturtemplates und Regeln:

  • Integrierte Testfunktion ermöglicht Vorschau der Signatur, noch bevor sie produktiv angewendet wird,
  • Unterstützung für alle E-Mails, die den Transportdienst von Exchange passieren, egal von welchem Mailclient sie gesendet werden,
  • Fernzugriff auf Regeln und Templates. Auf diese Weise kann die Gestaltung beispielsweise an Ihr Marketingteam delegiert werden, ohne dass kritische Serverfunktionen aus der Hand gegeben werden,
  • Vorinstallierte Bibliothek mit fertigen Templates,
  • Unterstützung für alle E-Mail-Formate – egal ob HTML, Plain Text oder RTF,
  • Alle Programmfunktionen können 30 Tage unentgeltlich getestet werden.
  • u.v.m.

Empfohlene Artikel

Einrichten eines Autoresponders in Microsoft Exchange Server

Einrichten eines Autoresponders in Microsoft Exchange Server

Exchange Server-Administratoren werden häufig vor die Aufgabe gestellt, auf dem Server einen Autoresponder zu hinterlegen, ohne dass der Endanwenderrechner dafür konfiguriert werden muss. Es gibt Active Directory-Gruppen und User, die an einigen Tagen oder zu einer bestimmten Zeit nicht verfügbar sind. In diesem Fall bedarf es einer automatischen Antwort, welche den Absender informiert, dass seine Nachricht nicht sofort bearbeitet werden kann. In den meisten Fällen ist es jedoch unmöglich, die Abwesenheitsnotiz auf jedem Endanwender-PC einzeln einzustellen. Zwar bietet Exchange Server keinen eigentlichen Mechanismus für Autoresponder, dennoch gibt es einige Möglichkeiten, wie man auf dem Server eine Auto-Reply einrichten kann.
Disclaimer in Geschäfts-E-Mails

Disclaimer in Geschäfts-E-Mails

Im Gegensatz zu E-Mail-Signaturen, deren Verwendung in der Bundesrepublik seit 2006 per Gesetz normiert ist, sind Disclaimer ein E-Mail-Baustein, welcher auf Freiwilligkeit beruht. Bei versäumter Nennung des Firmennamens, der Rechtsform oder der Firmenanschrift in einer Geschäfts-E-Mail flattern einem über kurz oder lang Abmahnungen ins Haus. Geht eine Nachricht ohne Disclaimer raus, passiert gar nichts. Welchen Zweck erfüllt der Disclaimer in einer E-Mail?
Mit Google Analytics Marketing-Kampagnen in E-Mail-Signaturen auswerten – Teil 1 (UTM-Tags)

Mit Google Analytics Marketing-Kampagnen in E-Mail-Signaturen auswerten – Teil 1 (UTM-Tags)

Wenn man über E-Mail-Marketing spricht, sind Newsletter und Marketing-Automation für gewöhnlich die ersten Assoziationen. Dabei endet der Horizont bei Weitem nicht bei diesen zwei Optionen. Ein ebenfalls wirkungsvoller Ansatz, um Ihre Produkte und Marke per E-Mail zu bewerben, können zentral verwaltete E-Mail-Signaturen sein. In eine E-Mail-Fußzeile lassen sich beispielsweise Branding und Werbe-Banner einbinden, wodurch ihre Attraktivität in puncto Marketing steigt. Als Marketer kommt man heutzutage um die Auswertung und Optimierung seiner Kampagnen-Ergebnisse nicht mehr herum. Durch stetige Justierung von Werbemaßnahmen kann deren Wirkung erhalten bzw. gesteigert werden. Der vorliegende Artikel befasst sich mit dem Einsatz von Google Analytics (derzeit ist GA die beliebteste Web-Analyse-Plattform), um Marketing-Kampagnen in E-Mail-Signaturen zu überwachen. Mit CodeTwo Exchange Rules wird eine unternehmensweite E-Mail-Signatur mit Hyperlinks und Google-Parametern erstellt, um das User-Verhalten zu analysieren. Anschließend zeigen wir Ihnen, wie man in der Bedienoberflächer von Google Analytics zu den Statistiken gelangt, welche in Anlehnung an das URL-Tagging erstellt werden. Los geht’s!

Kommentare

  1. Das Skript ist seit vielen jahren bei uns im Einsatz, habe es von meinem Vorgänger übernommen. Nachdem ich heute Anpassungen vornehmen wollte, habe ich durch Trial& Error herausgefunden, dass die Strings im Bereich

    objSignatureEntries.Add “AD Signature”, objSelection
    objSignatureObject.NewMessageSignature = “AD Signature”
    objSignatureObject.ReplyMessageSignature = “AD Signature”

    jeweils maximal 32 Zeichen lang sein können. Lässt sich das irgendwie umgehen, so dass hier längere Zeichenketten angegeben werden können?

    • avatar
      Tomek Stempniewicz says:

      Hallo,
      Tut mir leid, es wurde nie in Betracht gezogen, Signaturnamen mit mehr als 32 Zeichen zu verwenden, daher war diese Einschränkung nicht einmal bekannt. Wenn die Zeichenfolgenlänge begrenzt ist, müssen Sie leider die Benennung optimieren, um unter dieser Zahl zu bleiben. Basiert die Zeichenfolge auf dem Benutzernamen? Können Sie ein Beispiel geben?
      Grüße,
      Tomek

  2. avatar
    Marc Förster says:

    Hallo,
    wie kann das Skript auf LDAPS Port 636 angepasst werden?
    Die Abfragen sind bald nicht mehr über LDAP 389 möglich. Wir stellen bald auf die Verschlüsselung um.

    Danke!

    Grüße Marc

  3. avatar
    Jörg Wahner says:

    Hallo,
    bei mir wird leider nichts in die Signatur geschrieben.
    Was kann falsch sein?Habe auch schon oben wie beschrieben die Zeile geändert.
    Liebe Grüße
    Hansolo

    • avatar
      Paweł Socha says:

      Hallo Jörg,

      ich habe das Skript mit dem unten angegebenen Fragment ergänzt. Das neue Fragment befindet sich am Anfang des Skripts. Versuche mal bitte jetzt.

      If objUser Is Empty Then _
      MsgBox "No connection with LDAP information.", _
      vbCritical, "Error": Exit Sub

      Grüße,
      Pawel

  4. avatar
    Gunter Walz says:

    Super Skript,
    klasse.
    muste nur
    Set objSysInfo = CreateObject(“ADInformation”) in
    Set objSysInfo = CreateObject(“ADSystemInfo”) ändern
    hab es am laufen :-) Vielen Dank für die ausfühliche Erklärung :-)

Hinterlassen Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht.

Sie können diese HTML-Tags und -Attribute verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Verantwortlicher für Ihre personenbezogenen Daten ist CodeTwo sp. z o.o. sp. k.
Weitere Informationen finden Sie in unserer Datenschutzerklärung.