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.