IDebugMessageEvent2
This interface is used by the debug engine (DE) to send a message to Visual Studio that requires a response from the user.
Syntax
IDebugMessageEvent2 : IUnknown
Notes for Implementers
The DE implements this interface to send a message to Visual Studio that requires a user response. The IDebugEvent2 interface must be implemented on the same object as this interface. The SDM uses QueryInterface to access the IDebugEvent2
interface.
The implementation of this interface must communicate Visual Studio's call of SetResponse to the DE. For example, this can be done with a message posted to the DE's message handling thread, or the object implementing this interface could hold a reference to the DE and call back to the DE with the response passed into IDebugMessageEvent2::SetResponse
.
Notes for Callers
The DE creates and sends this event object to display a message to the user that requires a response. The event is sent by using the IDebugEventCallback2 callback function that is supplied by the SDM when it is attached to the program being debugged.
Methods in Vtable Order
The following table shows the methods of IDebugMessageEvent2
.
Method | Description |
---|---|
GetMessage | Gets the message to be displayed. |
SetResponse | Sets the response, if any, from the message box. |
Remarks
The DE will use this interface if it requires a specific response from the user for a particular message. For example, if the DE gets an "Access Denied" message after an attempt to remotely attach to a program, the DE sends this particular message to Visual Studio in an IDebugMessageEvent2
event with the message box style MB_RETRYCANCEL
. This allows the user to retry or cancel the attach operation.
The DE specifies how this message is to be handled by following the conventions of the Win32 function MessageBox
(see AfxMessageBox for details).
Use the IDebugErrorEvent2 interface to send messages to Visual Studio that do not require a response from the user.
Requirements
Header: msdbg.h
Namespace: Microsoft.VisualStudio.Debugger.Interop
Assembly: Microsoft.VisualStudio.Debugger.Interop.dll