Wissenswertes zu Outlook-Signaturen


Wenn man Daten von anderen Rechnern übernehmen muss, ist es manchmal ganz hilfreich zu wissen, wo betreffende Daten auf einem System zu finden sind. Wie z. B. die Outlook-Signaturen für E-Mails.

Diese sind im Pfad %Userprofile%\AppData\Roaming\Microsoft\Signatures zu finden und zwar jeweils in drei verschiedenen Ausführungen, einmal als nur Text, einmal als RTF und einmal als HTML-Fassung.

Hier gibt es weitere Infos: https://support.microsoft.com/en-us/kb/2691977, allerdings scheinen die hier genannten Registryeinstellungen unterscheidliche Ansichten nach sich zu ziehen: https://social.technet.microsoft.com/Forums/office/en-US/f9fd782e-ecdb-41e1-b00a-0b4b2cfd7d32/outlook-signature-registry-settings?forum=outlook. Egal wichtig auf jeden Fall ist noch dieser Artikel https://ifnotisnull.wordpress.com/automated-outlook-signatures-vbscript/configuring-outlook-for-the-signatures-within-the-users-registry/, welcher beschreibt, wie man zum aktuellen MAPI-Profil kommt und wo man dort die Einstellung für die aktuelle Signatur findet.

Um diesem Artikel etwas mehr Inhalt zu geben, soll wie immer mittels Powershell, nun das aktuelle MAPI-Profil ermittelt und dort die aktuelle Signatur ausgelesen werden. Zunächst muss das aktuelle MAPI-Profil ermittelt werden:

$defProf = Get-ItemProperty ‚HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles‘ -Name defaultprofile | select defaultprofile

$defProf.DefaultProfile
Outlook

Nun kann man damit die GUID 9375CFF0413111d3B88A00104B2A6676, welche für das Mailkonto unter MAPI steht, einsehen :

Get-Item "HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\$($defProf.defaultProfile)\9375CFF0413111d3B88A00104B2A6676"

Name                           Property
—-                           ——–
9375CFF0413111d3B88A00104B2A66 {ED475418-B0D6-11D2-8C3B-00104B2A6676} : {4, 0, 0, 0}
76                             LastChangeVer                          : {65, 0, 0, 0…}
                               {ED475419-B0D6-11D2-8C3B-00104B2A6676} : {1, 0, 0, 0…}
                               {ED475420-B0D6-11D2-8C3B-00104B2A6676} : {4, 0, 0, 0}
                               NextAccountID                          : 5

Hierunter sind als Werte weitere GUIDs sowie Subkeys hinterlegt. Von den GUIDs ist ED475418-B0D6-11D2-8C3B-00104B2A6676 CLSID_OlkMail, was OutlookMail darstellen soll. Die Definition sowie die anderen Werte sind hier zu finden: https://msdn.microsoft.com/en-us/library/office/aa192896%28v=office.11%29.aspx?f=255&MSPPError=-2147217396.

Man liest diesen Wert nun aus und erhält z. B.:

$v=Get-ItemProperty "HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\
Profiles\$($defProf.defaultProfile)\9375CFF0413111d3B88A00104B2A6676" -Name "{ED475418-B0D6-11D2-8C3B-00104B2A6676}"|select "{ED475418-B0D6-11D2-8C3B-00104B2A6676}"

$v.'{ED475418-B0D6-11D2-8C3B-00104B2A6676}‘
4
0
0
0

Die Ausgabe 4,0,0,0 steht in Registrierungseditor so: 04 00 00 00 und verweist auf den Subkey mit den eigentlichen Mailkontoeinstellungen. Wichtig, bevor man diesen Wert weiterverarbeitet muss die Endianess-Frage geklärt werden:

if ([System.BitConverter]::IsLittleEndian)
{
  [array]::Reverse($v.'{ED475418-B0D6-11D2-8C3B-00104B2A6676}‘)
}

$v.'{ED475418-B0D6-11D2-8C3B-00104B2A6676}‘
0
0
0
4

jetzt die Reihe noch in die korrekte Form bringen:

$account = $v.'{ED475418-B0D6-11D2-8C3B-00104B2A6676}‘ | foreach {$x=""} {$x+="{0:x2}" -f $_} {$x}

$account
00000004

Nun kommt man der Sache schon näher:

Get-ItemProperty "HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\$($defProf.defaultProfile)\9375CFF0413111d3B88A00104B2A6676\$account"

clsid                   : {ED475414-B0D6-11D2-8C3B-00104B2A6676}
Mini UID                : 3522235559
Service UID             : {208, 16, 38, 222…}
Service Name            : {77, 0, 83, 0…}
MAPI Provider           : 5
Identity Eid            : {0, 0, 0, 0…}
XP Provider UID         : {18, 194, 184, 55…}
Account Name            : {77, 0, 72, 0…}
Delivery Store EntryID  : {0, 0, 0, 0…}
XP Status               : 1
Preferences UID         : {56, 105, 182, 137…}
Delivery Folder EntryID : {239, 0, 0, 0…}
New Signature           : {101, 0, 97, 0…}
Reply-Forward Signature : {101, 0, 97, 0…}
PSPath                  : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows
                          NT\CurrentVersion\Windows Messaging
                          Subsystem\Profiles\Outlook\9375CFF0413111d3B88A00104B2A6676\00000004
PSParentPath            : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows
                          NT\CurrentVersion\Windows Messaging
                          Subsystem\Profiles\Outlook\9375CFF0413111d3B88A00104B2A6676
PSChildName             : 00000004
PSDrive                 : HKCU
PSProvider              : Microsoft.PowerShell.Core\Registry

Prima fast am Ziel. Jetzt gilt es nur noch die Werte von “New Signature” und “Reply-Forward Signature” auszulesen.

$ns = Get-ItemProperty "HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\$($defProf.defaultProfile)\9375CFF0413111d3B88A00104B2A6676\$account" -name "New signature" | select "New Signature"
$ns

New Signature
————-
{101, 0, 97, 0…}

[System.Text.Encoding]::Unicode.GetString($ns.’New Signature‘)
eaTest

Mit “Reply-Forward Signature” geht es genauso. Damit soll es für heute genug sein.

Eine Antwort to “Wissenswertes zu Outlook-Signaturen”

  1. Quirel Says:

    Vorsicht bei [Array]::Reverse die Reverse-Funktion arbeitet per Referenz, also am lebenden Objekt!!

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s


%d Bloggern gefällt das: