ATLEventHandling-Beispiel: Word-Ereignissen mithilfe von IDispEventImpl und IDispEventSimpleImpl behandelt
ATLEventHandling-Beispiel veranschaulicht die Verwendung von IDispEventImpl und IDispEventSimpleImpl von Microsoft Word ausgelöste Ereignisse behandeln.
Das Beispiel besteht aus einer ATL-Projekt mit zwei COM-Klassen: CSimple und CNotSoSimple. Diese Klassen stellen COM-Objekte, die mit einem Meldungsfeld Antwort von Microsoft Word ausgelöste Dokumentänderungsereignisse dar. CSimple zeigt, wie Ereignisse mit ATL IDispEventSimpleImpl -Klasse Vorlage behandelt, und CNotSoSimple zeigt, wie Ereignisse mit ATL IDispEventImpl-Klasse Vorlage zu behandeln. Der Code in zwei Klassen ist identisch, außer für die Unterschiede, die durch die Verwendung von anderen ATL-Vorlagen verursacht.
Sicherheitshinweis |
---|
Dieser Beispielcode soll ein Konzept veranschaulichen, und es wird nur den Code, der für dieses Konzept relevant sind. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "Wie besehen"keine Garantien. |
So erhalten Sie Beispiele und Anweisungen für deren Installation:
Um Beispiele von Visual Studio zuzugreifen
im Menü Hilfe Menü klicken Beispiele.
Standardmäßig sind die Beispiele in installiert. Laufwerk: \Programme\Microsoft visual Studio 10.0\Samples\.
- Die neueste Version dieses Beispiels und eine Liste der anderen Beispiele finden Sie unter Visual Studio Samples auf der MSDN-Website.
Erstellen und Ausführen des Beispiels
Hinweis
In diesem Beispiel muss Microsoft Office 2000 installiert werden.Wenn Sie dieses Beispiel mit anderen Versionen von Microsoft Office verwenden möchten, müssen Sie den Pfad zu der auf die in der Datei StdAfx.h im Verzeichnis ATLEventHandling verwiesen wird Mso-Dll-Datei angeben.Beispielsweise verwendet Office 2000 mso9.dll und Office XP mso.dll.
So erstellen und in diesem Beispiel führen
Öffnen Sie die Projektmappendatei ATLEventHandling.sln.
Wenn Sie Excel 2000 verwenden, ändern Sie die folgende Zeile in StdAfx.h:
#define OFFICE_VER OFFICEXP
Stattdessen werden:
#define OFFICE_VER OFFICE2000
From the Build menu, click Build Solution.
Führen Sie MFCClient.exe.
Sie sehen ein Dialogfeld mit einer Dropdown-Liste ermöglicht das Ausführen des Tests mit IDispEventImpl oder IDispEventSimpleImpl. Aktivieren Sie eines dieser Elemente, und klicken Sie dann die Startschaltfläche auf. Wenn Word auf Ihrem Computer installiert ist, wird eine neue Instanz geladen werden und die Testen der Komponente wird gestartet erhalten Ereignisse, die von Word gesendet wird, wenn das aktive Dokument geändert.
Sie können Ereignisse auslösen, indem neue Dokumente erstellen, Dokumente laden oder zu einem anderen Dokument unter Verwendung des Word Fenstermenü wechseln. Jedes Mal das Dokument geändert, wird ein Meldungsfeld, angibt, welche Komponente die Ereignisse und den Namen des Dokuments neu empfangen wird angezeigt. Sie können die Instanz von Word mithilfe der Stopptaste MFCClient im Dialogfeld, indem Sie ändern die Auswahl der Dropdown-Liste, oder Schließen von Word-Ereignishandler trennen.
Schließen Sie die Beispielanwendung mithilfe der OK oder Abbrechen Befehl oder das Dialogfeld schließen Schaltfläche.
Schlüsselwörter
In diesem Beispiel werden die folgenden Schlüsselwörter verwendet:
_ATL_FUNC_INFO , BEGIN_SINK_MAP, END_SINK_MAP, SINK_ENTRY_EX, SINK_ENTRY_INFO, IDispEventImpl, IDispEventSimpleImpl, IDispEventSimpleImpl::DispEventAdvise, IDispEventSimpleImpl::DispEventUnadvise