VBOffice

Redemption - SafeMailItem erzeugen

Mit den Safe*Items bietet die Redemption die Möglichkeit, auch die vom Sicherheitsmodell gesperrten Eigenschaften zu lesen.

Zuletzt geändert: 21.05.2006 | Aufrufe: 59.871  | #30
◀ Vorheriges Beispiel Nächstes Beispiel ▶
Category-Manager Category-Manager
Mit dem Category-Manager können Sie Outlook Kategorien gruppieren, synchronisieren und filtern, neuen Emails automatisch die Kategorie des Absenders zuweisen und vieles mehr. Das Addin ist auch für IMAP geeignet.

Die Redemption-Bibliothek enthält u.a. Safe*Item-Klassen für jede Outlook Klasse, die mindestens eine geblockte Eigenschaft oder Methode enthält. Diese geblockten Zugriffe wurden mit dem Sicherheitsmodell in Outlook 2000 SP2 (optional) bzw. SP3 eingeführt.

Der Ablauf, um z.B. aus einem Outlook MailItem ein Redemption SafeMailItem zu erzeugen, ist immer der gleiche. Und auch das Aufräumen der Redemption-Objekte muss, entgegen den üblichen COM-Mechanismen, immer manuell gemacht werden(!) und geschieht immer auf die gleiche Weise. Es ist also naheliegend, dafür wiederverwendbare Funktionen zu schreiben.

(Eine geniale Möglichkeit der Redemption ist, dass Sie die Klassennamen nach Belieben ändern können. Der Hintergrund ist: Ein Angreifer könnte einfach durch den Aufruf von CreateObject('Redemption.SafeMailItem') testen, ob Sie die Bibliothek installiert haben und somit Outlooks Sicherheitsmodell umgehen. Wenn die Klassennamen aber unbekannt sind, geht das nicht mehr; dann muss natürlich auch die Beispielfunktion CreateSafeItem angepaßt werden.)


tip  So fügen Sie Makros in Outlook ein
Private Function CreateSafeItem(Item As Object) As Object
  Dim rdItem As Object
  Dim olName As String, rdName As String

  'Beispiel: Aus Outlooks MailItem wird Redemptions SafeMailItem
  olName = TypeName(Item)
  rdName = "Redemption.Safe" & olName

  Set rdItem = CreateObject(rdName)
  rdItem.Item = Item
  Set CreateSafeItem = rdItem
  Set rdItem = Nothing
End Function

Private Sub ReleaseSafeItem(Item As Object)
  On Error Resume Next
  Set Item.Item = Nothing
  Set Item = Nothing
End Sub
OLKeeper OLKeeper
Der OLKeeper verhindert zuverlässig, dass Sie Microsoft Outlook unbeabsichtigt schließen und so etwa wichtige Emails verpassen würden.
email  Senden Sie eine Nachricht