Sdílet prostřednictvím


IDebugProcess2::Attach

Připojí správce ladění relace (SDM) k procesu.

Syntaxe

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

Parametry

pCallback
[v] IDebugEventCallback2 objekt, který se používá pro ladění oznámení událostí.

rgguidSpecificEngines
[v] Pole identifikátorů GUID ladicích modulů, které se mají použít k ladění programů spuštěných v procesu. Tento parametr může mít hodnotu null. Podrobnosti najdete v poznámkách.

celtSpecificEngines
[v] Počet ladicích modulů v rgguidSpecificEngines poli a velikost rghrEngineAttach pole.

rghrEngineAttach
[in, out] Pole kódů HRESULT vrácených ladicími moduly. Velikost tohoto pole je zadána v parametru celtSpecificEngines . Každý kód je obvykle buď S_OK nebo S_ATTACH_DEFERRED. Druhá možnost označuje, že de je aktuálně připojen k žádným programům.

Vrácená hodnota

V případě úspěchu vrátí hodnotu S_OK; v opačném případě vrátí kód chyby. V následující tabulce jsou uvedeny další možné hodnoty.

Hodnota Popis
E_ATTACH_DEBUGGER_ALREADY_ATTACHED Zadaný proces je již připojen k ladicímu programu.
E_ATTACH_DEBUGGEE_PROCESS_SECURITY_VIOLATION Během procesu připojení došlo k narušení zabezpečení.
E_ATTACH_CANNOT_ATTACH_TO_DESKTOP Desktopový proces nelze připojit k ladicímu programu.

Poznámky

Připojení k procesu připojí SDM ke všem programům spuštěným v tomto procesu, které můžou ladicí moduly (DE) zadané v rgguidSpecificEngines poli ladit. rgguidSpecificEngines Nastavte parametr na hodnotu null nebo zahrnout GUID_NULL do pole pro připojení ke všem programům v procesu.

Všechny události ladění, ke kterým dochází v procesu, jsou odeslány do daného IDebugEventCallback2 objektu. Tento IDebugEventCallback2 objekt je k dispozici, když SDM volá tuto metodu.

Viz také