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_RETRYCANCEL
an 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