IDebugProcess2::Attach

Fügt den Sitzungsdebug-Manager (SDM) an den Prozess an.

Syntax

int Attach( 
   IDebugEventCallback2 pCallback,
   Guid[]               rgguidSpecificEngines,
   uint                 celtSpecificEngines,
   int[]                rghrEngineAttach
);

Parameter

pCallback
[in] Ein IDebugEventCallback2-Objekt , das für die Debugereignisbenachrichtigung verwendet wird.

rgguidSpecificEngines
[in] Ein Array von GUIDs von Debugmodulen, die zum Debuggen von Programmen verwendet werden sollen, die im Prozess ausgeführt werden. Dieser Parameter kann ein Nullwert sein. Weitere Informationen finden Sie im Abschnitt Hinweise.

celtSpecificEngines
[in] Die Anzahl der Debugmodule im rgguidSpecificEngines Array und die Größe des rghrEngineAttach Arrays.

rghrEngineAttach
[in, out] Ein Array von HRESULT-Codes, die von den Debugmodulen zurückgegeben werden. Die Größe dieses Arrays wird im celtSpecificEngines Parameter angegeben. Jeder Code ist in der Regel entweder S_OK oder S_ATTACH_DEFERRED. Letzteres weist darauf hin, dass die DE derzeit an keine Programme angefügt ist.

Rückgabewert

Wenn die Ausführung erfolgreich ist, wird S_OK, andernfalls ein Fehlercode zurückgegeben. In der folgenden Tabelle sind weitere mögliche Werte aufgeführt.

Wert Beschreibung
E_ATTACH_DEBUGGER_ALREADY_ATTACHED Der angegebene Prozess ist bereits an den Debugger angefügt.
E_ATTACH_DEBUGGEE_PROCESS_SECURITY_VIOLATION Während des Anfügenverfahrens ist ein Sicherheitsverstoß aufgetreten.
E_ATTACH_CANNOT_ATTACH_TO_DESKTOP Ein Desktopprozess kann nicht an den Debugger angefügt werden.

Hinweise

Durch Das Anfügen an einen Prozess wird die SDM an alle Programme angefügt, die in diesem Prozess ausgeführt werden, die von den im rgguidSpecificEngines Array angegebenen Debugmodulen (DE) gedebuggt werden können. Legen Sie den rgguidSpecificEngines Parameter auf einen Nullwert fest oder fügen Sie GUID_NULL es in das Array ein, das an alle Programme im Prozess angefügt werden soll.

Alle Debugereignisse, die im Prozess auftreten, werden an das angegebene IDebugEventCallback2-Objekt gesendet. Dieses IDebugEventCallback2 Objekt wird bereitgestellt, wenn die SDM diese Methode aufruft.

Siehe auch