Freigeben über


IDebugMessageEvent2

Diese Schnittstelle wird vom Debugmodul (DE) verwendet, um eine Nachricht an Visual Studio zu senden, die eine Antwort des Benutzers erfordert.

Syntax

IDebugMessageEvent2 : IUnknown

Hinweise für Implementierer

Die DE implementiert diese Schnittstelle, um eine Nachricht an Visual Studio zu senden, die eine Benutzerantwort erfordert. Die IDebugEvent2-Schnittstelle muss auf demselben Objekt wie diese Schnittstelle implementiert werden. Das SDM verwendet QueryInterface , um auf die IDebugEvent2 Schnittstelle zuzugreifen.

Die Implementierung dieser Schnittstelle muss den Aufruf von SetResponse von Visual Studio an die DE kommunizieren. Dies kann z. B. mit einer nachricht erfolgen, die im Nachrichtenbehandlungsthread der DE veröffentlicht wurde, oder das Objekt, das diese Schnittstelle implementiert, einen Verweis auf die DE enthalten und einen Rückruf an die DE durchführen, wobei die Antwort übergeben wird IDebugMessageEvent2::SetResponse.

Hinweise für Aufrufer

Die DE erstellt und sendet dieses Ereignisobjekt, um eine Meldung an den Benutzer anzuzeigen, der eine Antwort erfordert. Das Ereignis wird mithilfe der Rückruffunktion IDebugEventCallback2 gesendet, die vom SDM bereitgestellt wird, wenn es an das zu debuggende Programm angefügt wird.

Methoden in Vtable-Reihenfolge

In der folgenden Tabelle sind die Methoden von IDebugMessageEvent2 aufgeführt.

Methode Beschreibung
GetMessage Ruft die anzuzeigende Nachricht ab.
SetResponse Legt die Antwort (falls vorhanden) aus dem Meldungsfeld fest.

Hinweise

Die DE verwendet diese Schnittstelle, wenn eine bestimmte Antwort des Benutzers für eine bestimmte Nachricht erforderlich ist. Wenn z. B. die DE eine Nachricht "Zugriff verweigert" erhält, nachdem versucht wurde, eine Remoteanfügung an ein Programm durchzuführen, sendet die DE diese bestimmte Nachricht in einem IDebugMessageEvent2 Ereignis mit dem Nachrichtenfeldformat MB_RETRYCANCELan Visual Studio. Auf diese Weise kann der Benutzer den Anfügungsvorgang wiederholen oder abbrechen.

Die DE gibt an, wie diese Nachricht gemäß den Konventionen der Win32-Funktion MessageBox behandelt werden soll (details hierzu finden Sie unter AfxMessageBox ).

Verwenden Sie die IDebugErrorEvent2-Schnittstelle , um Nachrichten an Visual Studio zu senden, die keine Antwort des Benutzers erfordern.

Anforderungen

Header: msdbg.h

Namespace: Microsoft.VisualStudio.Debugger.Interop

Assembly: Microsoft.VisualStudio.Debugger.Interop.dll

Siehe auch