Wie ist es richtig IDTExtensibility2 Schnittstelle für Office COM-Add-In implementieren?
-
23-08-2019 - |
Frage
Ich bin die Umsetzung COM-Add-In für Outlook. Ich benutze IDTExtensibility2. Ich bin nicht sicher, ob dies der beste Weg zu tun, COM-Add-In, aber ich kann das nicht ändern.
Diese Schnittstelle definiert fünf Methoden:. OnConnection, OnStartupComplete, OnAddInsUpdate, OnBeginShutdown, OnDisconnection
Ich brauche die folgenden Operationen ausführen:
- Laden Konfigurationsdaten aus der Datei
- Laden Registrierungsdaten
- Neue Sitzung
- Erstellen * .pst-Datei
- Melden Sie sich an Explorer Ereignisse
- Eine Verbindung mit Internet-Server, einige Daten zu erhalten
- Erstellen Sie Menüpunkte im Hauptmenü
- Erstellen Sie eine Symbolleiste
- Hinzufügen / Entfernen mehrere Dinge in Outllok (auf * .pst-Dateien Ebene)
Bitte geben Sie, was soll ich wann tun?
- Was ich brauche, in OnConnection Verfahren durchführen?
- Was darf man nur, wenn OnStartupComplete aufruft?
- Welche Ressourcen muss ich entsorgen befreien während OnBeginShutdown / OnDisconnection?
Lösung
Beachten Sie, dass 1,2 und 6 sind nicht Outlook-Addin spezifische Aufgaben.
3 ist nicht erforderlich. Als Addin Sie schaffen keine Sitzung - Sie mit einem get connected bestehenden (durch die OnConnection
Verfahren implementiert)
Für 4 und 9 Ich empfehle RDO: http://dimastr.com/redemption/ (Kann auch für 3 verwendet werden, wenn Sie wirklich eine andere Sitzung benötigen)
5,7 und 8 I empfehlen die Verwendung von ADX: http: / /www.add-in-express.com/add-in-net/
(Sie werden nicht tatsächlich über IDTExtensibility2
kümmern überhaupt nicht mehr, wenn Sie dies tun)
OnConnection
ist, wo Sie Ihren Verweis auf die Application
Schnittstelle greifen, von denen Sie sonst alles ableiten kann.
OnStartupComplete
ist, wo Sie alle Ihre Initialisierungscode setzen können.
OnDisconnection
ist, wo Sie alle verbleibenden OOM Referenzen freigeben, sollten Sie während der Sitzung angesammelt haben können, das heißt alles, was von der anfänglichen Application
Referenz abgeleitet wurde, die Sie über OnConnection
erhalten.