Bereitstellen von Automatisierung für Fenster
Sie können Automatisierung für Dokument- und Toolfenster bereitstellen. Die Bereitstellung von Automatisierungsobjekten ist ratsam, wenn Sie Automatisierungsobjekte in einem Fenster verfügbar machen möchten, und die Umgebung stellt nicht bereits ein vorgefertigtes Automatisierungsobjekt bereit, wie es mit einer Aufgabenliste der Fall ist.
Automatisierung für Toolfenster
Die Umgebung bietet Automatisierung in einem Toolfenster, indem ein Standardobjekt Window zurückgegeben wird, wie im folgenden Verfahren erläutert:
Rufen Sie die Methode über die GetProperty Umgebung mit __VSFPROPID auf. VSFPROPID_ExtWindowObject als
VSFPROPID
Parameter zum Abrufen desWindow
Objekts.Wenn ein Aufrufer ein VSPackage-spezifisches Automatisierungsobjekt für Ihr Toolfenster durchfordertObject, ruft
IExtensibleObject
QueryInterface
die Umgebung die Schnittstellen auf , oder IVsExtensibleObjectdieIDispatch
Schnittstellen an. BeideIExtensibleObject
undIVsExtensibleObject
stellen eine GetAutomationObject Methode bereit.Wenn die Umgebung dann die
GetAutomationObject
Methode übergibtNULL
, reagieren Sie, indem Sie ihr VSPackage-spezifisches Objekt übergeben.Wenn das Aufrufen
QueryInterface
nachIExtensibleObject
undIVsExtensibleObject
fehlschlägt, ruft die Umgebung diesIDispatch
aufQueryInterface
.
Automatisierung für Dokumentfenster
Ein Standardobjekt Document ist auch in der Umgebung verfügbar, obwohl ein Editor eine eigene Implementierung des Document Objekts haben kann, indem die Schnittstelle implementiert IExtensibleObject
und darauf reagiert GetAutomationObject
.
Darüber hinaus kann ein Editor ein VSPackage-spezifisches Automatisierungsobjekt bereitstellen, das über die Object Methode abgerufen wird, indem die IVsExtensibleObject
Schnittstellen implementiert werden IExtensibleObject
. Die VSSDK-Beispiele tragen ein RTF-dokumentspezifisches Automatisierungsobjekt bei.