Ladicí modul
Ladicí modul (DE) pracuje s interpretem nebo operačním systémem a poskytuje ladicí služby, jako je řízení provádění, zarážky a vyhodnocení výrazu. De je zodpovědný za monitorování stavu laděného programu. K tomu de používá jakékoli metody, které jsou k dispozici v podporovaném modulu runtime, ať už z procesoru nebo z rozhraní API poskytovaných modulem runtime.
Modul CLR (Common Language Runtime) například poskytuje mechanismy pro monitorování spuštěného programu prostřednictvím rozhraní ICorDebugXXX. De, který podporuje CLR, používá příslušná rozhraní ICorDebugXXX pro sledování programu spravovaného kódu, který je laděný. Potom předá všechny změny stavu správci ladění relace (SDM), který tyto informace předá integrovanému vývojovému prostředí sady Visual Studio.
Poznámka:
Ladicí modul cílí na konkrétní modul runtime, tj. systém, ve kterém se program ladí. MODUL CLR je modul runtime pro spravovaný kód a modul runtime Win32 je určený pro nativní aplikace systému Windows. Pokud jazyk, který vytvoříte, může cílit na jeden z těchto dvou modulů runtime, sada Visual Studio už poskytuje potřebné ladicí moduly. Vše, co musíte implementovat, je vyhodnocovače výrazů.
Operace ladicího stroje
Monitorovací služby se implementují prostřednictvím rozhraní DE a můžou způsobit, že ladicí balíček přejdou mezi různými provozními režimy. Další informace naleznete v části Provozní režimy. V každém prostředí za běhu je obvykle pouze jedna implementace DE.
Poznámka:
I když existují samostatné implementace DE pro Transact-SQL a JScript, VBScript a JScript sdílejí jeden DE.
Ladění sady Visual Studio umožňuje, aby ladicí moduly spouštěly jeden ze dvou způsobů: buď ve stejném procesu jako prostředí sady Visual Studio, nebo ve stejném procesu jako laděný cílový program. Druhý formulář obvykle nastane, když proces, který je laděný, je ve skutečnosti skript spuštěný pod interpretem. Ladicí modul musí mít důvěrné znalosti interpreta, aby mohl monitorovat skript. V tomto případě je interpret ve skutečnosti modulem runtime; ladicí moduly jsou určené pro konkrétní implementace modulu runtime. Kromě toho je možné implementaci jednoho de rozdělit mezi hranice procesů a počítačů (například vzdálené ladění).
De zveřejňuje ladicí rozhraní sady Visual Studio. Veškerá komunikace probíhá prostřednictvím modelu COM. Bez ohledu na to, zda je de načten v procesu, mimo proces nebo v jiném počítači, nemá vliv na komunikaci součástí.
De pracuje s komponentou vyhodnocovače výrazů, která umožňuje de pro daný modul runtime porozumět syntaxi výrazů. De také pracuje s komponentou obslužné rutiny symbolů pro přístup k symbolickým ladicím informacím vygenerovaným kompilátorem jazyka. Další informace naleznete v tématu Vyhodnocovače výrazů a zprostředkovatele symbolů.