Připojení přímo k programu
Uživatelé, kteří chtějí ladit programy v procesu, který už běží, obvykle používají tento proces:
V integrovaném vývojovém prostředí otevřete nabídku Ladění a vyberte příkaz Připojit k procesu...
Zobrazí se dialogové okno Připojit k procesu se seznamem všech ladicích modulů nainstalovaných na počítači.
Zadejte DE, které se mají použít k ladění vybraného procesu, zvolte proces a klikněte na tlačítko Připojit .
Ladicí balíček spustí ladicí relaci a předá do ní seznam DE. Relace ladění pak předá tento seznam spolu s funkcí zpětného volání do vybraného procesu a pak požádá proces, aby vypsal jeho spuštěné programy.
Programově v reakci na požadavek uživatele vytvoří balíček ladění instanci správce ladění relace (SDM) a předá do něj seznam vybraných DE. Spolu se seznamem ladicí balíček předává SDM IDebugEventCallback2 rozhraní. Ladicí balíček předává seznam DE vybranému procesu voláním IDebugProcess2::Attach. SDM pak volá IDebugProcess2::EnumPrograms na portu k vytvoření výčtu programů spuštěných v procesu.
Od tohoto okamžiku se každý ladicí modul připojí k programu přesně tak, jak je podrobně popsáno při připojování po spuštění, se dvěma výjimkami.
Z důvodu efektivity jsou DE implementované pro sdílení adresního prostoru s SDM seskupené tak, aby každý de má sadu programů, ke kterým se připojí. V tomto případě IDebugProcess2 volá IDebugEngine2::Attach a předá ho pole programů, ke které se má připojit.
Druhou výjimkou je to, že spouštěcí události odeslané de připojením k programu, který je již spuštěný, obvykle nezahrnují událost vstupního bodu.