Meldungen aus der Vergangenheit

Werbung

Spam
Lecker Spam! Foto: AJC1 / Lizenz siehe: flickr

Ich fahre meinen Rechner hoch. Outlook 2007 startet. In meinem Postfach habe ich Dutzende E-Mails. Praktisch alles Spam. Dazu muss gesagt werden, dass Microsofts eigener Spam-Filter, aber auch andere Lösungen meines Erachtens keine auch nur annähernd zufriedenstellende Lösung bringen. Zu viel Spam rutscht durch. Standardmäßig signalisiert Outlook sogar Spam-Meldungen höher (!) als die echten E-Mails. Es erscheint also laufend ein nervtötendes Dialogfeld, das einem auf den Eingang einer Spam-Mail hinweist. In der Praxis will man aber doch, dass man nur beim Eingang echter E-Mails benachrichtigt wird und Spam elegant im Spam-Ordner verschwindet. Das alles war ein Grund, dass ich mir in VBA einen eigenen Spam-Filter programmiert habe. Die Grundidee: In Spam-E-Mails findet sich fast nie eine persönliche Anrede mit dem eigenen Namen. Werde ich also persönlich angeredet, dann soll die Mail als normale E-Mail bewertet werden. Oft bekommt man aber Mails, in denen aus Bequemlichkeitsgründen auf die Anrede verzichtet wird. Diese entstehen typischerweise in einem längeren Faden einer Kommunikation. Solche E-Mails stammen aber dann von bekannten Absendern. Die Regel lautet daher: Alle E-Mails mit persönlicher Anrede („Hallo Thomas“, „Hi Thomas“, „Hallo Herr Irlbeck“ usw.) oder bei denen der Absender im Adressbuch steht, sind echte E-Mails, der Rest ist Spam. Für alle Fälle habe ich noch White- und Blacklists realisiert, in denen verbotene Wörter sowie Absender generell gesperrt bzw. als erlaubt definiert werden können.

Die Lösung klappt erstaunlich gut. Nur noch sehr, sehr selten klingelt der Rechner bei einer Spam-Mail.

Doch nun ist alles anders. Ich schaue mir das Ganze näher an. Das Makro startet nicht mehr. Der Code sieht o.k. aus, ich aktiviere aber mal eine Debug-Zeile, um zu überprüfen, ob diese überhaupt abgearbeitet wird. Beim Speichern erhalte ich dann die Meldung

Ein Problem mit den digitalen Signaturen ist aufgetreten. Das VBA-Projekt konnte nicht digital signiert werden. Die Unterschrift wird verworfen.

Solche Meldungen dürfte jeder wie die Pest hassen. Es ist also ein Problem aufgetreten, man erfährt aber nicht, was für eines. Wie auch immer, Outlook traut durch die nicht mehr vorhandene Signatur meinem eigenen Code nicht mehr. In Word stellt sich das gleiche Problem. Hier könnte man auch die Makros alternativ in einen Ordner packen, der als vertrauenswürdig gilt. Bei Outlook ist das nicht möglich. Bei beiden Programmen ließen sich natürlich auch sämtliche Schutzmechanismen ausschalten, um die Makros wieder zum Funktionieren zu bewegen. Das empfiehlt sich aber erstens nicht, zweitens möchte ich die wahre Ursache beseitigen.

Ich versuche, das Problem dadurch zu lösen, indem ich einfach die Zertifikate lösche und neue anlege. Doch es bringt nichts, die Meldung bleibt. Ich google nach der Fehlermeldung. Ich werde ja nicht der Einzige mit diesem Problem sein. Neben allgemeinen Tipps wie „neue Zertifikate anzulegen“, „Office neu zu installieren“, „den Rechner neu aufzusetzen“ oder „dreimal laut zu fluchen“ hat ein Benutzer einen spezifischeren Tipp:

Die maximale Zeilenlänge im VBA Code scheint beim Signieren begrenzt zu sein: nachdem ich eine sehr lange Kommentar(!) Zeile (1023 Zeichen) auf 2 Zeilen von ca. 500 Zeichen aufgeteilt hatte, funktionierte das digitale Signieren. Effekt war systematisch reproduzierbar.

Da an dem Code nichts geändert wurde, kann dies aber kaum der Grund für die „Unterschriftensperre“ von Outlook sein. Sicherheitshalber schaue ich den Code durch. Natürlich finde ich keine verbotenen überlangen Zeilen.

Ich probiere noch lange Zeit herum. Nun aber komme ich auf die Idee, mal die Office 2007-Installation näher anzuschauen. Einen Tag zuvor hatte ich einiges deinstalliert, aber keine Office-Komponenten, sondern verschiedenste Dinge, darunter diverse Visual Studio-Komponenten. Ich will schon fast aufgeben, als ich unter „Systemsteuerung/Alle Systemsteuerungselemente/Microsoft Office Professional 2007/Ändern/Gemeinsam genutzte Office-Features /Digitales Zertifikat für VBA-Projekte“ feststelle, dass dieses nicht ganz unwichtige Feature ausgeschaltet ist. Ich aktiviere es, woraufhin ein wenig auf der Festplatte gerödelt wird, aber nicht mal die Office-DVD verlangt wird. Das war’s, das Makro lässt sich nun wieder ohne jegliches Murren signieren. Offenbar hat es da doch eine der Deinstallationsroutinen zu gut gemeint.

Liebes Microsoft, bitte verzichtet doch auf solche Meldungen aus der Computersteinzeit. Es kann ja nicht so schwer sein, statt einer Meldung mit „Ein Problem … ist aufgetreten“, die offenbar die verschiedensten Ursachen haben kann, einfach zu sagen, dass das jeweilige Feature nicht installiert ist. Das könnte einem jede Menge Zeit und Nerven sparen. Danke!