Outlook Signatur Verteilungs-Tool

  • Hallo Zusammen,

    wir hatten bisher immer das Tool "OutlookSignatur.exe" (https://www.outlook-stuff.com/tipps-tricks/p…17-einheitliche) benutzt, da das aber schon Jahre einige Jahre nicht weiterentwickelt wurde habe ich mich eine Umsetzung in Autoit gemacht.

    Da unsere Clients im Azure AD liegen und die User im lokalen AD habe ich LDAP benutzt, um die Userparameter auszulesen.

    Hier das Script:

    Bei Outlook gibt es nun 2 Signatur Bereiche. Einmal die Signatur auf dem lokalen Gerät und die zweite für das EmailKonto. Welche dann auch Online Syncronisiert wird.

    Die Signatur für das Emailkonto muss dann im Format Signaturname + (userPrincipalName) sein. So im Quelltext: $sSigName = $sCompany & " ("& $sUserPName & ")"

    Das Tool liest eine HTML und ein Textfile ein und ersetzt dann die entsprechenden Platzhalter mit den per LDAP ausgelesen Werten und spiecher es als Signatur im Fortmat HTML, TXT und RTF ab.

    Nun möchte ich noch eine Updater bauen, der beim starten prüft (Freigegebener Ordner auf dem Filseserver ) ob es eine neue HTML und TXT Datei gibt, wenn die Signatur mal angepasst wurde.

    Beispiel TXT File mit den Platzhaltern.

    Hat da jemand eine Idee?

    Gruß Marcel

  • Hi Marcel 👋 ,

    ich habe deine Frage nicht richtig verstanden fürchte ich. Du liest im Moment von @ScriptDir ein, Zeile 76.

    AutoIt
    ; --- HTML-Datei einlesen ---
    Local $sFile_html = @ScriptDir & "\Signatur-Files\Signatur.html"

    Nun möchtest du aber prüfen, ob es eine neue Datei bzw. einen neuen Inhalt (html und/oder txt Datei) gibt und diesen verwenden, richtig?
    Wo ist nun deiner Frage? Also kannst du nicht vom freigegebenen zentralen Ordner lesen oder wo ist das Problem?

    Dein Programm läuft ja auch nur einmal, richtig? Also es wird nicht offen gehalten um per polling (aller N Minuten) mal zu prüfen ob es was neues gibt usw., richtig?
    Dann brauchst du doch sowieso ein Mechanismus um zu wissen, wann eine Änderungen vorhanden ist usw.
    Sorry, bitte formuliere dein Ziel und deine Frage nochmal (für mich) neu 😅 , Danke dir 🤝 .

    Viele Grüße
    Sven

  • Hallo Sven,

    also den Updater habe ich mir so gedacht:

    1. es wird eine neue Signatur.html + txt in den Netzwerkpfad yxz gelegt und eine Versionsnummer angegeben.

    2. das lokal installierte OutlookSignatur Skript überprüft beim starten auf eine geänderte Versionsnummer, wenn die Versionsnummer vom Netzwerkpfad yxz höher ist, kopiere die neuen Dateien in den lokalen Pfad und überschreibe die alten.

    Das geht doch am besten mit einer Version.ini oder? Eventuell so?

    Aktuell läuft das Script beim Login und es besteht die Möglichkeit die Exe über eine Desktopverknüpfung anzuklicken. Zum Beispiel für HO User, die ja erst noch die VPN aufbauen müssen.

    Gruß Marcel

    Einmal editiert, zuletzt von gmmg (8. Dezember 2025 um 13:02)

  • Ah okay, Danke Marcel. Nun bin ich im Bilde (glaube ich 😅).

    Ja klar kannst du das per INI machen oder sonst wie.
    Könntest auch jedes Mal die Dateien (html + txt) ziehen, egal ob sich der Inhalt ändert, da doch sowieso nur einmal am Tag das Programm läuft oder?
    Im Moment sind beide Dateiinhalte doch eh sehr klein, da würde es keinen Stress auf dem File-Server verursachen, meine ich.

    Falls du mit Versionen arbeitest, wäre noch interessant in mit welchem Format? Semantic versioning (SemVer) ist einer der Quasi-Standards, aber ein einfaches hochzählen reicht sicherlich für deinen Anwendungsfalls auch aus.

    Könntest vielleicht einfach mit Zeitstempeln arbeiten, dann brauchst du gar keine INI.
    Also du könntest verschiedene Ordner haben, die per Zeitstempel benammt sind. Bspw. sowas 20251208-150920 oder ähnlich.
    Dann prüfst du einfach ob ein aktuellerer Ordner vorhanden ist, und ziehst dir dort dann die html und txt, die in jedem Ordner hinterlegt sind.

    Da gibt es N verschiedene Varianten. Ich kenne deinen Anwendungsfall nicht im Detail und weiß auch nicht ob du noch viel skalieren musst oder willst, in irgendeiner Hinsicht. Doch keep it simple.
    Ein Aufruf mit IniRead um die aktuelle Version zu lesen ist gut aus meiner Sicht.

    Viele Grüße
    Sven

  • Dann einen angenehmen freien Arbeitstag Marcel ✌️ .

  • Hi Marcel,

    ja erscheint mir auch sinnvoll und einfach in der Umsetzung.
    Bei anderen Anforderungen hättest du sicherlich mehr Vorschläge erhalten (von anderen auch, meine ich), doch so ist es "relativ" klar/einfach.

    Gutes Gelingen weiterhin, ciao.

    Viele Grüße
    Sven