Sdílet prostřednictvím


Cíle

Modul ladicího programu podporuje ladění různých typů cílů, cílů uživatelského režimu a režimu jádra, živých cílů a souborů výpisu stavu systému a místních a vzdálených cílů. Existují různé metody pro připojení motoru k těmto různým typům cílů.

Soubory s výpisem stavu systému

Soubory s výpisem chyb uživatelského režimu a režimu jádra se otevírají pomocí OpenDumpFile. Modul také dokáže vytvořit soubory výpisu paměti z cíle pomocí WriteDumpFile2.

Živě, User-Mode Cíle

Modul ladicího programu může vytvářet i připojovat procesy uživatelského režimu.

Vytvoření procesu se provádí zadáním příkazového řádku a volitelně počátečního adresáře a prostředí pro nový proces. Modul se pak může připojit k novému procesu nebo nechat nový proces pozastavený, když se připojí k jinému procesu. Například při ladění aplikace, která se skládá z klienta i serveru, je možné vytvořit klienta v pozastaveném stavu a připojit se k již běžícímu serveru, což umožňuje nastavit zarážky serveru před spuštěním klienta a vyvolat operace serveru.

Při odpojení od procesu může engine volitelně ponechat proces běžící normálně, zabít proces nebo proces opustit (nechat ho pozastavený, dokud se k němu nepřipojí jiný ladicí program nebo se zabije).

Modul může být dotazován na informace o všech procesech uživatelského režimu spuštěných v počítači, včetně ID procesu a názvu spustitelné image, která se používá ke spuštění procesu. Tyto informace lze použít k vyhledání procesu ladění.

Živě, Kernel-Mode Cíle

Metoda AttachKernel připojí modul ladicího programu k jádru Windows.

Vzdálené cíle

Při vzdáleném ladění pomocí modulu ladicího programu můžete provést dva další kroky:

  1. Připojte se k hostitelskému enginu. Pokud hostitelský modul není instancí místního modulu, použijte DebugConnect k vytvoření klientského objektu, který je připojen k hostitelskému modulu.

  2. Připojte hostitelský modul k procesovém serveru nebo serveru pro připojení jádra. Pokud se hostitelský modul nepřipojí přímo k cíli, musí se připojit k procesovém serveru nebo serveru připojení jádra, který to dělá.

Klient teď může hostitelskému modulu sdělit, aby získal cíl prostřednictvím procesového serveru nebo serveru připojení jádra.

Získání cílů

Při získání cíle se získání cíle nedokončí, dokud cíl nevygeneruje událost. Obvykle to znamená, že nejprve zavoláte metodu pro připojení ladicího programu k cíli a volání WaitForEvent , aby cíl vygeneroval událost. To platí i v případě, že cílem je soubor s výpisem crashu, protože tyto vždy ukládají událost, typicky událost, která způsobila vytvoření souboru s výpisem.

Další informace

Podrobnosti o připojování k cílům najdete v tématu Připojení k cílům.