Udostępnij za pośrednictwem


Microsoft.VisualStudio.Debugger.ComponentInterfaces Przestrzeń nazw

Interfejsy

IDkmActiveScriptDebugMonitor

Interfejs zaimplementowany przez funkcję DM skryptu w celu zapewnienia bezpośredniego dostępu do środowiska uruchomieniowego skryptu docelowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmAfterSetNextStatementNotification

IDkmAfterSetNextStatementNotification zaimplementowane przez składniki, które chcą otrzymywać powiadomienia po zakończeniu zestawu następnej instrukcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmAppDomainCreatedNotification

IDkmAppDomainCreatedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia AppDomainCreated. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Element AppDomainCreated jest uruchamiany po utworzeniu domeny aplikacji przez proces docelowy.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmAppDomainUnloadedNotification

IDkmAppDomainUnloadedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia AppDomainUnloaded. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Element AppDomainUnloaded jest uruchamiany, gdy element AppDomain jest zwalniany przez proces docelowy.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmAppPackageInfo

Interfejs do wyliczania informacji o pakiecie aplikacji w systemie lokalnym lub zdalnym.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: TransportKind.

IDkmAsyncBreak

Ten interfejs zawiera interfejs API do przeprowadzania async-break w procesie debuggee.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmAsyncBreakCompleteNotification

IDkmAsyncBreakCompleteNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia AsyncBreakComplete. IDkmAsyncBreakCompleteNotification jest wywoływana po wszystkich implementacjach elementu IDkmAsyncBreakCompleteReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wysłane przez monitor debugowania po zakończeniu żądania asynchronicznego przerwania procesu.

Zdarzenia AsyncBreakComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmAsyncBreakCompleteReceived

Element IDkmAsyncBreakCompleteReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia AsyncBreakComplete. IDkmAsyncBreakCompleteReceived jest wywoływany przed IDkmAsyncBreakCompleteNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wysłane przez monitor debugowania po zakończeniu żądania asynchronicznego przerwania procesu.

Zdarzenia AsyncBreakComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmAsyncStateMachineDecoder170

Zawiera informacje o poziomie metadanych dotyczące metod maszyny stanu asynchronicznego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

IDkmAsyncTaskDecoder

Przewodnik stosu wywołań asynchronicznych i stosów tworzenia zadań.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: EngineId, RuntimeId, SymbolProviderId, TaskProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmBaseFuncEvalService

Interfejs zaimplementowany przez podstawowe monitory debugowania, aby umożliwić wznowienie procesu oceny funkcji. Ten interfejs zawiera podstawowe usługi używane przez polecenie "ExecuteFuncEval". Konfiguracja, oczyszczanie, obsługa limitu czasu, obsługa wyjątków i wykrywanie ukończenia są obsługiwane przez monitory debugowania wyższego poziomu.

Ten interfejs nie jest dostarczany do debugowania clR w wersji 2.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmBaseNativeExecutionController

Funkcja IDkmBaseNativeExecutionController jest implementowana przez podstawowe monitory debugowania, które obsługują ustawianie natywnych punktów przerwania lub pojedynczy krok po instrukcjach natywnych. Zapewnia ona zaawansowane elementy pierwotne kontroli wykonywania potrzebne do debugowania środowiska CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmBeforeContinueExecutionNotification

Zawiera powiadomienie, że proces ma kontynuować wykonywanie. Ta funkcja jest wywoływana przed zainicjowaniem odpowiednich schodków, więc można wykonać func-evals.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmBeforeStopDebuggingNotification

Zawiera powiadomienie, że proces ma zostać odłączony lub zakończony.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmBinaryLoadedNotification

Element IDkmBinaryLoadedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia BinaryLoaded. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Wskazuje, że pomyślnie załadowaliśmy plik binarny modułu w minidump, który debugujemy.

Zdarzenia BinaryLoaded można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmBinaryLocator

Ten interfejs zawiera metody zaimplementowane przez dostawcę symboli, aby umożliwić monitorom debugowania wyszukiwanie plików binarnych na serwerach symboli i dyskach lokalnych. Jest to wymagane, ponieważ interfejsy API serwera symboli nie są bezpieczne wątkiem, a dostawca symboli jest właścicielem dostępu do nich.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmBinaryLocator11a

Rozszerza funkcjonalność lokalizatora binarnego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1).

IDkmBinaryReloadOpportunityNotification

IDkmBinaryReloadOpportunityNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia BinaryReloadOpportunity. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Podczas debugowania minidump podniesione przez MinidumpBDM do przeniesienia pliku binarnego, gdy użytkownik próbuje ręcznie załadować plik binarny.

Zdarzenia BinaryReloadOpportunity można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2).

IDkmBoundBreakpointHitNotification

Element IDkmBoundBreakpointHitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia BoundBreakpointHit. IDkmBoundBreakpointHitNotification jest wywoływana po wszystkich implementacjach elementu IDkmBoundBreakpointHitReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zapewnia powiadomienie o trafieniu powiązanego punktu przerwania (DkmBoundBreakpoint). Powiązane punkty przerwania to obiekty punktu przerwania wysokiego poziomu. Powiadomienie o punktach przerwania niskiego poziomu (DkmRuntimeBreakpoint) jest uzyskiwane za pośrednictwem zdarzenia RuntimeBreakpoint.

Zdarzenia BoundBreakpointHit można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

IDkmBoundBreakpointHitReceived

Element IDkmBoundBreakpointHitReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia BoundBreakpointHit. Element IDkmBoundBreakpointHitReceived jest wywoływany przed IDkmBoundBreakpointHitNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zapewnia powiadomienie o trafieniu powiązanego punktu przerwania (DkmBoundBreakpoint). Powiązane punkty przerwania to obiekty punktu przerwania wysokiego poziomu. Powiadomienie dotyczące punktów przerwania niskiego poziomu (DkmRuntimeBreakpoint) jest uzyskiwane za pośrednictwem zdarzenia RuntimeBreakpoint.

Zdarzenia BoundBreakpointHit można pominąć, wywołując element DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

IDkmBreakpointConditionProcessor

Interfejs zaimplementowany na komputerze docelowym do obsługi oceny warunków punktu przerwania i liczby trafień.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmBreakpointConditionProcessorClient

Zaimplementowane przez wywołujące element DkmRuntimeBreakpoint.SetCompiledConditionPending w celu zapewnienia skompilowanych warunków po osiągnięciu punktu przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmBreakpointConditionProcessorClient140

Zaimplementowane przez wywołujące element DkmRuntimeBreakpoint.SetCompiledConditionPending w celu zapewnienia skompilowanych warunków po osiągnięciu punktu przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmBreakpointConditionProcessorGpuExtension

Interfejs rozszerzenia do debugowania procesora GPU zaimplementowany na komputerze docelowym do obsługi oceny warunków punktu przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmBreakpointConditionThreadSelectorForGpu

Interfejs zaimplementowany na komputerze docelowym do obsługi oceny warunków punktu przerwania na wszystkich zatrzymanych wątkach i wybierz wątek, którego warunek jest spełniony dla procesora GPU.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1).

IDkmBreakpointHitWithErrorNotification

Element IDkmBreakpointHitWithErrorNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia BreakpointHitWithError. Element IDkmBreakpointHitWithErrorNotification jest wywoływany po wszystkich implementacjach elementu IDkmBreakpointHitWithErrorReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zawiera powiadomienie, że napotkano oczekujący punkt przerwania, ale przetwarzanie spowodowało błąd niemożliwy do odzyskania. Proces jest teraz zatrzymany, a punkt przerwania jest teraz w stanie błędu i nie zostanie trafiony ponownie.

Zdarzenia BreakpointHitWithError można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmBreakpointHitWithErrorReceived

Element IDkmBreakpointHitWithErrorReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia BreakpointHitWithError. Element IDkmBreakpointHitWithErrorReceived jest wywoływany przed IDkmBreakpointHitWithErrorNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zawiera powiadomienie, że napotkano oczekujący punkt przerwania, ale przetwarzanie spowodowało błąd niemożliwy do odzyskania. Proces jest teraz zatrzymany, a punkt przerwania jest teraz w stanie błędu i nie zostanie trafiony ponownie.

Zdarzenia BreakpointHitWithError można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmBreakpointManager

Ten interfejs jest implementowany przez składnik Menedżera punktu przerwania w celu zapewnienia domyślnej obsługi punktów przerwania. Inne składniki w systemie mogą również implementować ten interfejs, aby ponownie mapować znaczenie punktów przerwania dla niektórych języków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

IDkmBreakpointManagerFileUpdate

Interfejs implementowany przez menedżerów punktów przerwania, które chcą otrzymywać powiadomienia, gdy pliki są aktualizowane w środowisku IDE.

Implementacje tego interfejsu są zawsze wywoływane (filtrowanie nie jest obsługiwane). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

IDkmBreakpointManagerNotification

Ten interfejs jest implementowany przez składniki, które dodają punkty przerwania do menedżera punktów przerwania (na przykład AD7 AL). Dzięki temu składnik może być powiadamiany, gdy menedżer punktu przerwania powiąże punkt przerwania lub wykryje błąd punktu przerwania lub ostrzeżenie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

IDkmBreakpointManagerNotification174

Ten interfejs jest implementowany przez składniki, które dodają punkty przerwania do menedżera punktów przerwania (na przykład AD7 AL). Dzięki temu składnik może być powiadamiany, gdy menedżer punktu przerwania powiąże punkt przerwania lub wykryje błąd punktu przerwania lub ostrzeżenie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

IDkmBreakpointManagerNotification176

Ten interfejs jest implementowany przez składniki, które dodają punkty przerwania do menedżera punktów przerwania (na przykład AD7 AL). Dzięki temu składnik może być powiadamiany, gdy menedżer punktu przerwania powiąże punkt przerwania lub wykryje błąd punktu przerwania lub ostrzeżenie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

IDkmCallStackFilter

Umożliwia składnikowi dodanie dodatkowej adnotacji do stosu wywołań lub usunięcie fizycznych ramek ze stosu wywołań. Ze względu na wydajność filtry ramek stosu są wywoływane przed oceną przez ewaluatorów wyrażeń. Jednym z przykładowych filtrów ramek stosu jest ukrycie kodu zewnętrznego w stosie wywołań. Filtry ramek, które dodają konteksty stosu asynchronicznego, muszą mieć priorytet Normalny lub wyższy.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TaskProviderId.

IDkmClrAppDomainNameChanged

Interfejs umożliwiający zaktualizowanie nazwy domeny aplikacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

IDkmClrCustomVisualizerObjectProvider

Tworzy wystąpienie typu niestandardowego wizualizatora po stronie debugowania i udostępnia metody uzyskiwania dostępu do wizualizowanego obiektu ('Visualizer Object').

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrCustomVisualizerObjectProvider1610

Tworzy wystąpienie typu niestandardowego wizualizatora po stronie debugowania i udostępnia metody uzyskiwania dostępu do wizualizowanego obiektu ('Visualizer Object'), biorąc pod uwagę, że może nie obsługiwać klasy BinaryFormatter do komunikowania się z nim.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10).

IDkmClrDebugMonitorExceptionCaughtNotification

Klasa IDkmClrDebugMonitorExceptionCaughtNotification jest implementowana przez składniki, które chcą nasłuchiwać zdarzenia ClrDebugMonitorExceptionCaught. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. Zdarzenie "ClrDebugMonitorExceptionCaught" zawiera powiadomienie z monitora debugowania zarządzanego o przechwyconym wyjątku, który wystąpił w procesie docelowym. To zdarzenie jest używane przez narzędzia diagnostyczne, takie jak IntelliTrace, do zalogowania się w pliku TraceDebugger.\n.

Zdarzenia ClrDebugMonitorExceptionCaught mogą być pomijane przez wywołanie elementu DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmClrDecompiler

Udostępnia usługi dekompilacji dla typów CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

IDkmClrDecompiler173

Udostępnia usługi dekompilacji dla typów CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

IDkmClrDecompiler175

Udostępnia usługi dekompilacji dla modułów CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

IDkmClrDecompiler177

Udostępnia usługi dekompilacji dla modułów CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmClrExceptionDetailsProvider

Ten interfejs umożliwia monitorom debugowania podanie dodatkowych informacji o wyjątkach CLR w postaci szczegółów wyjątków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: EngineId, ExceptionCategory, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 7 (DkmApiVersion.VS15Update7).

IDkmClrExpressionCompiler

Umożliwia kompilatorom języków zarządzanych kompilowanie wyrażeń używanych przez debuger do obsługi oceny wyrażeń i punktów przerwania warunkowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrExpressionCompilerCallback

Umożliwia kompilatorom języków zarządzanych kompilowanie wyrażeń używanych przez debuger do obsługi oceny wyrażeń. Ten interfejs zawiera metody wywoływane z monitora.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrExpressionEvaluatorCallbackInternal

Metody wewnętrzne używane przez ewaluatora wyrażeń CLR do komunikacji między monitorem/środowiskiem IDE.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrFormatter

Formatuje wartości i nazwy typów wyników oceny w ciąg odpowiedni dla debugowanego języka. Dostawcy kompilatora mogą zaimplementować ten interfejs w celu dostosowania formatowania wartości dla ich języka.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrFormatter2

Formatuje wartości wyników oceny w ciągu odpowiednim dla debugowanego języka. Dostawcy kompilatora mogą zaimplementować ten interfejs w celu dostosowania formatowania wartości dla ich języka. Ten interfejs jest dodatkiem do interfejsu IDkmClrFormatter.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmClrFrameGenericParameterProvider

Zapewnia możliwość pobrania parametrów ogólnych dla ramki stosu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrFrameTypesProvider

Używane wewnętrznie do wykonywania zapytań o informacje o typie stosu dla informacji o wyjątku odwołania o wartości null. Ten interfejs może ulec zmianie w przyszłych wersjach programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmClrFullNameProvider

Zawiera pełne nazwy niektórych wyrażeń. Pełne nazwy są używane dla funkcji Dodaj do obejrzenia.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmClrFullNameProvider2

Udostępnia nazwy specyficzne dla języka dla identyfikatorów metadanych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10).

IDkmClrInspectionQueryProcessor

Umożliwia wykonywanie zapytań skompilowanych do zarządzanego il.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrIntrinsicAssemblyProvider

Zawiera metodę ładowania zestawu metod wewnętrznych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrManagedHeapStringProvider

Interfejs zaimplementowany przez inspektora CLR w celu wydajnego oceniania ciągów.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

IDkmClrManagedHeapTypeLayoutProvider

Interfejs zaimplementowany przez inspektora CLR w celu udostępnienia informacji o układzie typu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

IDkmClrMetaDataLoader

Metody ładowania metadanych dla modułów, które nie są ładowane w procesie debuggee.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrMetaDataProvider

Interfejs zaimplementowany przez zarządzaną usługę DM w celu uzyskania metadanych z danego modułu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmClrMetaDataProvider140

Dodano metody uzyskiwania dostępu do metadanych dodanych w VS14RTM.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrMetaDataProvider150

Dodano metody uzyskiwania dostępu do metadanych punktu odniesienia (oryginalnego).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

IDkmClrMethodSignatureHelper

Udostępnia metodę pobierania tokenu podpisu dla sygnatury zmiennej lokalnej przy użyciu tokenu metody. Jeśli metoda została zmodyfikowana za pośrednictwem enC, ta metoda zwraca najnowszy token obiektu blob.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrModuleLookup

Uzyskuje klasę DkmClrModuleInstance z modułu ICorDebugModule.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmClrNcInstructionAddressResolver

Interfejs rozpoznawania tokenu ref typu do pisania def i skojarzonego zestawu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmClrObjectFavoritesCacheCallback

Udostępnia formatery wyników z informacjami o ulubionych obiektów, które są buforowane po stronie zdalnej.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4).

IDkmClrPropertyInterpreter

Metody oceny właściwości na ICorDebugValueHandles.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmClrPropertyInterpreter151

Metody oceny właściwości na ICorDebugValueHandles.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 3 (DkmApiVersion.VS15Update3).

IDkmClrResultProvider

Dostarcza wartości DkmEvaluationResults podane DkmClrValues. Dostawcy kompilatora mogą zaimplementować ten interfejs, aby zmienić sposób rozszerzania wartości i prezentowania użytkownikowi.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmClrRuntimeDebugMonitor

Interfejs zaimplementowany przez zarządzaną usługę DM w celu uzyskania informacji o bieżącym stanie środowiska uruchomieniowego procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmClrRuntimeDebugMonitor150

Interfejs zaimplementowany przez zarządzaną usługę DM w celu uzyskania informacji o bieżącym stanie środowiska uruchomieniowego procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

IDkmClrRuntimeDebugMonitorDirect

Interfejs zaimplementowany przez zarządzaną funkcję DM w celu zapewnienia ewaluatorów wyrażeń i innych składników bezpośredniego dostępu do interfejsów ICorDebug.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

IDkmClrSymbolCallback

Ten interfejs API umożliwia ewaluatorowi wyrażeń uzyskiwanie informacji zawartych w pliku PDB CLR lub dynamicznym magazynie symboli modułu CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmClrSymbolCallback120

Ulepszenie funkcji IDkmClrSymbolCallback w celu umożliwienia obsługi scenariuszy ClrNc.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmClrSymbolCallback160

Ulepszenia wywołania zwrotnego dostawcy symboli dodane dla programu Visual Studio 2019.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

IDkmClrSymbolSignatureCallback

Udostępnia interfejsy API ewaluatorom wyrażeń w celu uzyskania podpisu zmiennych lokalnych i stałych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmClrSymUnmanagedReaderFactory

Ten interfejs API zapewnia częściową implementację interfejsu ISymUnmanagedReader2 dla wystąpienia modułu CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmClrTypeResolver

Interfejs rozpoznawania typów z ciągów do identyfikatora metody lub identyfikatora typu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmClrTypeRuntimeInfoProvider

Służy wewnętrznie do wykonywania zapytań dotyczących parametru ICorDebugType i informacji o rozmiarze z obiektu DkmClrType. Ten interfejs może ulec zmianie w przyszłych wersjach programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmClrTypeRuntimeInfoProvider178

Interfejs zaimplementowany przez zarządzaną usługę DM w celu udostępnienia informacji o typie z środowiska CLR.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

IDkmClrUIVisualizerService

Zaimplementowane przez ewaluatory wyrażeń, które obsługują metodę EE języka C# dla niestandardowych osób przeglądających (tj. IPropertyProxyEESide). Ten interfejs może ulec zmianie w przyszłych wersjach.

Implementacje tego interfejsu są zawsze wywoływane (filtrowanie nie jest obsługiwane). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

IDkmClrUIVisualizerService120

Zaimplementowane przez ewaluatory wyrażeń, które obsługują metodę EE języka C# dla niestandardowych osób przeglądających (tj. IPropertyProxyEESide). Ten interfejs może ulec zmianie w przyszłych wersjach.

Implementacje tego interfejsu są zawsze wywoływane (filtrowanie nie jest obsługiwane). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmClrValueInspectionCallback

Interfejs zaimplementowany w celu umożliwienia inspekcji wartości CLR reprezentowanych przez DkmClrValues.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmCompiledInspectionQueryProcessor

Zapewnia wykonywanie skompilowanych zapytań inspekcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: CompiledInspectionQueryKind, CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmComputeKernelExitNotification

Element IDkmComputeKernelExitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ComputeKernelExit. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Zdarzenie po zakończeniu wykonywania jądra obliczeniowego procesora GPU.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmContinueExecution

Ten interfejs zawiera interfejs API umożliwiający wznowienie wykonywania po wysłaniu zdarzenia zatrzymania do pakietu debugera programu Visual Studio. Ten interfejs powinien być implementowany tylko przez składniki podstawowego monitora debugowania. W przeciwieństwie do prawie wszystkich innych interfejsów jedna implementacja tego interfejsu może nie być łańcuchem do innej implementacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmCustomMessageAsyncForwardReceiver176

Zaimplementowane przez składniki, które chcą odbierać komunikaty niestandardowe ze środowiska IDE lub innego składnika Concord, i przetwarzają ten komunikat asynchronicznie. Jest to asynchroniczna wersja IDkmCustomMessageForwardReceiver. Należy pamiętać, że tylko komunikaty wysyłane przy użyciu asynchronicznego (DkmWorkList) wersji DkmCustomMessage.SendLower będą odbierane za pośrednictwem tego interfejsu.

Implementatory tego interfejsu zwykle używają filtru SourceId.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

IDkmCustomMessageCallbackReceiver

Zaimplementowane przez składniki, które chcą odbierać komunikaty niestandardowe z innego składnika Concord. Jest to interfejs podobny do interfejsu IDkmCustomMessageForwardReceiver, z tą różnicą, że ta metoda wymaga, aby obiekt wywołujący był na niższym poziomie w hierarchii składników niż składnik, który odbiera powiadomienie (np. Monitor debugowania podstawowego —> AD7 AL).

Implementatory tego interfejsu zwykle używają filtru SourceId.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId, TransportKind.

IDkmCustomMessageForwardReceiver

Zaimplementowane przez składniki, które chcą odbierać komunikaty niestandardowe ze środowiska IDE lub z innego składnika Concord. Jest to interfejs podobny do interfejsu IDkmCustomMessageCallbackReceiver, z tą różnicą, że ta metoda wymaga, aby obiekt wywołujący był na wyższym poziomie w hierarchii składników niż składnik odbierający (np. AD7 AL —> podstawowy monitor debugowania).

Implementatory tego interfejsu zwykle używają filtru SourceId.

Począwszy od wersji 17.6, istnieje asynchroniczna alternatywa dla tego interfejsu: IDkmCustomMessageAsyncForwardReceiver176.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId, TransportKind.

IDkmCustomStopNotification

IDkmCustomStopNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia CustomStop. IDkmCustomStopNotification jest wywoływana po wszystkich implementacjach IDkmCustomStopReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zdarzenie CustomStop umożliwia składnikowi concord podnieść zdarzenie zatrzymania do niestandardowego składnika interfejsu użytkownika lub do składnika Concord wyższego poziomu.

Zdarzenia CustomStop można pominąć przez wywołanie elementu DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId, TransportKind.

IDkmCustomStopReceived

IDkmCustomStopReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia CustomStop. IDkmCustomStopReceived jest wywoływany przed IDkmCustomStopNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zdarzenie CustomStop umożliwia składnikowi concord podnieść zdarzenie zatrzymania do niestandardowego składnika interfejsu użytkownika lub do składnika Concord wyższego poziomu.

Zdarzenia CustomStop można pominąć przez wywołanie elementu DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId, TransportKind.

IDkmCustomVisualizer

Ten interfejs jest implementowany przez wizualizatory wyrażeń niestandardowych w celu programowego dostosowywania widoku wyrażenia. Zwykle odbywa się to w celu obsługi wizualizacji, które nie są możliwe przy użyciu natywnej składni wizualizatora lub w celu włączenia wizualizacji bez pełnych informacji symbolicznych. Wizualizator może przejąć pełną kontrolę nad wyrażeniem, w tym rozszerzeniem elementów podrzędnych, lub uzyskać domyślne wyrażenie z ewaluatora wyrażeń, zmodyfikować je nieznacznie, ale odroczyć inne operacje, takie jak rozszerzenie z powrotem do środowiska EE.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId, SourceId, SymbolProviderId, VisualizerId.

IDkmCustomVisualizerCallback

Ten interfejs jest implementowany ewaluator wyrażeń, aby umożliwić dodatku EE wywołanie zwrotne do ewaluatora wyrażeń.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId, SourceId, SymbolProviderId, VisualizerId.

IDkmDataBreakpointErrorInfoClient

Interfejs dla punktów przerwania danych kończy się niepowodzeniem po ich powiązaniu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmDataBreakpointHitNotification

Element IDkmDataBreakpointHitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia DataBreakpointHit. IDkmDataBreakpointHitNotification jest wywoływana po wszystkich implementacjach elementu IDkmDataBreakpointHitReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zawiera powiadomienie o trafieniu oczekującego punktu przerwania z dodatkowymi informacjami o punkcie przerwania danych. Proces został zatrzymany z dodatkowymi informacjami.

Zdarzenia DataBreakpointHit można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmDataBreakpointHitReceived

Element IDkmDataBreakpointHitReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia DataBreakpointHit. Element IDkmDataBreakpointHitReceived jest wywoływany przed elementem IDkmDataBreakpointHitNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zawiera powiadomienie o trafieniu oczekującego punktu przerwania z dodatkowymi informacjami o punkcie przerwania danych. Proces został zatrzymany z dodatkowymi informacjami.

Zdarzenia DataBreakpointHit można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmDataBreakpointInfoProvider

Interfejs odpowiedzialny za dostarczanie informacji istotnych dla punktu przerwania danych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmDataBreakpointInfoProvider160

Rozszerzenie do IDkmDataBreakpointInfoProvider, aby umożliwić ewaluatorom wyrażeń podanie nazwy wyświetlanej punktów przerwania danych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmDebugMonitorExceptionNotification

Element IDkmDebugMonitorExceptionNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia DebugMonitorException. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. Zdarzenie "DebugMonitorException" zawiera powiadomienie z monitorów debugowania dotyczących wyjątków występujących w procesie docelowym. To powiadomienie o zdarzeniu jest używane przez menedżera wyjątków i przez monitory debugowania działające na poziomach składników powyżej monitora debugowania, który wykrył wyjątek. Zamiast tego składniki wyższego poziomu powinny używać wyzwalaczy wyjątków. Aby uzyskać więcej informacji, zobacz DkmExceptionTrigger.

Jeśli wyjątek zostanie wysłany nieobsługiwany (ustawiono DkmExceptionProcessingStage.Unhandled), środowisko IDE zostanie zatrzymane. Inne wyjątki mogą zostać zatrzymane w zależności od wszelkich elementów DkmExceptionTrigger ustawionych przez usługę AD7 AL lub innych składników. Ad7 AL odczytuje domyślny zestaw wyzwalaczy z %VSRegistryRoot%\AD7Metrics\Exception%CategoryGuid%*.

Zdarzenia DebugMonitorException można pominąć, wywołując funkcję DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

IDkmDeploymentCommandCallback

Interfejs wywołania zwrotnego zaimplementowany przez wywołania DkmDeploymentCommand.Start w celu odbierania powiadomień o zdarzeniach w poleceniu wdrożenia.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SourceId, TransportKind.

IDkmDisassemblyFunctionLabelProvider

Udostępnia symbole potrzebne do formatowania dezasemblacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3).

IDkmDisassemblyProvider

Służy do dezasemblowania instrukcji w przestrzeni adresowej debuggee.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmDisassemblyRuntimeAddressResolver

Umożliwia środowisku uruchomieniowemu podanie adresu do rozpoznawania nazw symboli do użycia w oknie dezasemblacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 7 (DkmApiVersion.VS16Update7).

IDkmDisassemblySymbolProvider

Udostępnia symbole potrzebne do formatowania dezasemblacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmDumpWriter

Ten interfejs zawiera interfejs API do zapisywania pliku zrzutu procesu debuggee.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmEditAndContinueService

Interfejs implementowany przez aparat edycji i kontynuowania do obsługi usługi zapytań o stan.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmEmbeddedBreakpointHitNotification

Element IDkmEmbeddedBreakpointHitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia EmbeddedBreakpointHit. IDkmEmbeddedBreakpointHitNotification jest wywoływana po wszystkich implementacjach elementu IDkmEmbeddedBreakpointHitReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wysyłane przez menedżera wyjątków po napotkaniu osadzonego wyjątku punktu przerwania. Zamiast tego składniki pod menedżerem wyjątków muszą nasłuchiwać zdarzenia wyjątku specyficznego dla platformy.

Zdarzenia EmbeddedBreakpointHit można pominąć. Jeśli to zdarzenie osiągnie warstwę AD7, debuger przejdzie w tryb przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmEmbeddedBreakpointHitReceived

Element IDkmEmbeddedBreakpointHitReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia EmbeddedBreakpointHit. Element IDkmEmbeddedBreakpointHitReceived jest wywoływany przed IDkmEmbeddedBreakpointHitNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wysyłane przez menedżera wyjątków po napotkaniu osadzonego wyjątku punktu przerwania. Zamiast tego składniki pod menedżerem wyjątków muszą nasłuchiwać zdarzenia wyjątku specyficznego dla platformy.

Zdarzenia EmbeddedBreakpointHit można pominąć. Jeśli to zdarzenie osiągnie warstwę AD7, debuger przejdzie w tryb przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmEmbeddedDocumentProvider

Ten interfejs API służy do pobierania dokumentów kodu źródłowego osadzonych w pliku symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

IDkmEmbeddedDocumentProvider158

Ten interfejs API jest używany w scenariuszach vsdbg w celu określenia, czy dana instrukcja znajduje się w osadzonym dokumencie bez uzyskiwania zawartości dokumentu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmEmbeddedDocumentProvider165

Ten interfejs API służy do sprawdzania istnienia osadzonych dokumentów, wyliczania osadzonych dokumentów i pobierania zawartości dokumentu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

IDkmEntryPointNotification

Element IDkmEntryPointNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia programu EntryPoint. IDkmEntryPointNotification jest wywoływana po wszystkich implementacjach elementu IDkmEntryPointReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wystrzelił z menedżera punktu przerwania, gdy punkt przerwania punktu wejścia został trafiony.

Nie można pominąć zdarzeń programu EntryPoint. Aby zastąpić punkt wejścia, zaimplementuj element IDkmEntryPointQuery.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmEntryPointReceived

Element IDkmEntryPointReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia programu EntryPoint. Funkcja IDkmEntryPointReceived jest wywoływana przed IDkmEntryPointNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wystrzelił z menedżera punktu przerwania, gdy punkt przerwania punktu wejścia został trafiony.

Nie można pominąć zdarzeń programu EntryPoint. Aby zastąpić punkt wejścia, zaimplementuj element IDkmEntryPointQuery.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmExceptionAnalyzer

Interfejs, który pozwala składnikowi concord analizować wyjątek i wymyślać ulepszony opis problemu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1).

IDkmExceptionContinuedNotification

Element IDkmExceptionContinuedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ExceptionContinued. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. WyjątekContinued jest wysyłany przez monitor debugowania po wznowieniu wykonywania w procesie docelowym, a dany wyjątek nie został zgnieciony. Innymi słowy, proces docelowy będzie kontynuowany wraz ze standardowym przetwarzaniem wyjątków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

IDkmExceptionController

IDkmExceptionController jest implementowany przez monitory debugowania środowiska uruchomieniowego, które wyzwalają zdarzenia wyjątków (DkmExceptionInformation.OnDebugMonitorException()).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

IDkmExceptionDetailsProvider

Ten interfejs umożliwia monitorom debugowania dostarczanie dodatkowych informacji o wyjątkach w postaci szczegółów wyjątków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, ExceptionCategory, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmExceptionDetailsProvider164

Ten interfejs umożliwia wykonywanie rozszerzonych zapytań dotyczących wyjątku, w szczególności oryginalnego stosu wywołań.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, ExceptionCategory, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4).

IDkmExceptionDetailsProvider173

Interfejs używany do implementowania DkmExceptionDetails.GetStackTraceInstructionAddresses.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, ExceptionCategory, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4).

IDkmExceptionFormatter

IDkmExceptionFormatter jest implementowany przez monitory debugowania środowiska uruchomieniowego, które wyzwalają zdarzenia wyjątków. W przeciwieństwie do elementu IDkmExceptionController, istnieje zazwyczaj jedna implementacja interfejsu IDkmExceptionFormatter dla każdej kategorii wyjątków. Na przykład, podczas gdy wiele podstawowych implementacji monitora debugowania jest w stanie wykryć wyjątki Win32, musi istnieć tylko jedna implementacja formatera.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

IDkmExceptionManager

Interfejs implementowany przez składnik menedżera wyjątków, aby umożliwić włączanie lub wyłączanie wyzwalaczy wyjątków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmExceptionManager140

Jest to zaktualizowana wersja elementu IDkmExceptionManager, która została dodana dla programu Visual Studio 14.0 w celu zapewnienia sposobu usuwania wyzwalaczy wyjątków z menedżera wyjątków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmExceptionStackTraceProvider

Umożliwia bibliotece implementujące obiekty wyjątków, które utrzymują przechwycony ślad stosu, aby uwidocznić ten ślad stosu w debugerze.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmExceptionTriggerHitNotification

Element IDkmExceptionTriggerHitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ExceptionTriggerHit. Element IDkmExceptionTriggerHitNotification jest wywoływany po wszystkich implementacjach elementu IDkmExceptionTriggerHitReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zdarzenie "ExceptionTriggerHit" zawiera powiadomienie o spełnieniu wcześniej ustawionego elementu DkmExceptionTrigger.

Zdarzenia ExceptionTriggerHit można pominąć, wywołując element DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId, SourceId.

IDkmExceptionTriggerHitReceived

Element IDkmExceptionTriggerHitReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ExceptionTriggerHit. Element IDkmExceptionTriggerHitReceived jest wywoływany przed wywołaniem IDkmExceptionTriggerHitNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zdarzenie "ExceptionTriggerHit" zawiera powiadomienie o spełnieniu wcześniej ustawionego elementu DkmExceptionTrigger.

Zdarzenia ExceptionTriggerHit można pominąć, wywołując element DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId, SourceId.

IDkmExceptionWinRTErrorExtractor

Klasa IDkmExceptionWinRTErrorExtractor jest wywoływana przez menedżera wyjątków w celu wyodrębnienia rozszerzonych informacji o błędzie winRT z wyjątku JavaScript/CLR/C++/etc.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

IDkmExtendedRegisters

Pobiera rozszerzone rejestry z kontekstu wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmFrameExceptionInterceptProvider

Ten interfejs jest implementowany przez monitory debugowania, które zapewniają obsługę odwijania wyjątków od określonej ramki.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmFramePseudoLocalResultProvider

Umożliwia udostępnienie dodatkowych węzłów do lokalnych ramek, rozpoznawalnych przez nazwę pseudorejestrowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmFuncEvalCompletedNotification

Funkcja IDkmFuncEvalCompletedNotification jest implementowana przez składniki, które chcą nasłuchiwać zdarzenia FuncEvalCompleted. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Zdarzenie FuncEvalCompleted jest wysyłane po zakończeniu oceny funkcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmFuncEvalStartingNotification

IDkmFuncEvalStartingNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia FuncEvalStarting. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Zdarzenie FuncEvalStarting jest wysyłane tuż przed rozpoczęciem oceny funkcji. W przypadku zagnieżdżonego stanu przerwania każda nowa ocena funkcji wyzwoli kolejne zdarzenie FuncEvalStarting. W tym scenariuszu element docelowy zatrzymuje się, a użytkownik przeprowadza ocenę z natychmiastowego okna, które wyzwala zdarzenie FuncEvalStarting. Użytkownik osiąga punkt przerwania w ramach ocenianej funkcji. Użytkownik wykonuje drugą ocenę, która wyzwala drugie zdarzenie FuncEvalStarting. Użytkownik umożliwia ukończenie obu ocen i wyzwala dwa zdarzenia FuncEvalCompleted.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmFunctionTableProvider

Interfejs zapewniający dostęp do tabeli funkcji środowiska uruchomieniowego procesu. Domyślna implementacja jest dostarczana przez natywny monitor debugowania firmy Microsoft, który umożliwia znajdowanie tabel funkcji w załadowanych modułach Win32 i dynamicznych danych PData w procesach na żywo. Ten interfejs może zostać zaimplementowany przez podstawowe monitory debugowania w celu zapewnienia dostępu do tabeli funkcji środowiska uruchomieniowego dla procesów innych niż na żywo (np. minidumps).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmGetExpensiveHashValue177

Udostępnia metody obliczania i zwracania rzeczywistej wartości skrótu "drogi".

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmGPUBreakpointBehaviorQuery

Interfejs do wykonywania zapytań dotyczących zachowania punktu przerwania debugowania procesora GPU.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmGPUComputeKernelOperation

Zapewnia hierarchię jądra obliczeniowego, tj. grupę wątków, wektor obliczeniowy i wątek obliczeniowy do wyświetlenia przez użytkownika.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmGPUDisassemblyQuery

Służy do wykonywania zapytań o nieprzetworzone dezasemblacji w kodzie bajtu debuggee procesora GPU.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmGPUEnvironmentFilter

Opcjonalny interfejs wewnętrzny, który można zaimplementować w celu dostosowania środowiska procesu docelowego procesora GPU przed jego uruchomieniem. Po stronie monitora debugowania można zaimplementować ten interfejs API lub IDkmGPUEnvironmentFilter.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: EngineId.

IDkmGPUMemoryOperation

Zaimplementowane przez podstawowe monitory debugowania w celu zapewnienia dostępu do pamięci docelowego procesu procesora GPU. Podstawowe monitory debugowania są odpowiedzialne za wykonywanie operacji we/wy pamięci.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmGpuRaceHazardsAllowSameNotification

Interfejs aktualizowania składników, gdy opcja "IsGpuRaceHazardsAllowSameSettingEnabled" jest włączona lub wyłączona.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmGPURegisterOperation

Zaimplementowane przez podstawowe monitory debugowania w celu zapewnienia dostępu do rejestrów wątku obliczeniowego procesora GPU.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmGPUSetMemoryAccessWarningOperation

Protokół IDkmGPUSetMemoryAccessWarningOperation służy do konfigurowania ostrzeżeń dostępu do pamięci procesora GPU na debugowanym urządzeniu GPU. Jest on implementowany przez podstawowe monitory debugowania, które obsługują raportowanie wyjątków dostępu do pamięci procesora GPU.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmGPUSingleStepCompleteNotification

Protokół IDkmGPUSingleStepCompleteNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia GPUSingleStepComplete. IDkmGPUSingleStepCompleteNotification jest wywoływana po wszystkich implementacjach IDkmGPUSingleStepCompleteReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wysyłane po zakończeniu pojedynczego kroku wątku procesora GPU. Zdarzenie może zostać wyzwolone przez inny wątek od wątku żądania w tym samym warp.

Zdarzenia GPUSingleStepComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId.

IDkmGPUSingleStepCompleteReceived

Protokół IDkmGPUSingleStepCompleteReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia GPUSingleStepComplete. IDkmGPUSingleStepCompleteReceived jest wywoływany przed IDkmGPUSingleStepCompleteNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wysyłane po zakończeniu pojedynczego kroku wątku procesora GPU. Zdarzenie może zostać wyzwolone przez inny wątek od wątku żądania w tym samym warp.

Zdarzenia GPUSingleStepComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId.

IDkmGPUSymbolProviderCallback

Interfejs wywołania zwrotnego implementowany przez dostawców symboli procesora GPU w celu dostarczania informacji z magazynu symboli do podstawowych monitorów debugowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmGPUSymbolQuery

Ten interfejs API służy do odczytywania informacji o symbolu DPC++.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

IDkmGPUSymbolQueryCallback

Umożliwia składnikom zdalnym uzyskiwanie informacji o pozycji źródłowej dla języka DPC++ w przypadku, gdy dostawca symboli znajduje się na maszynie programu VS.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: RuntimeId, SymbolProviderId.

IDkmGPUTempBreakStepper

Interfejs implementowany przez podstawowe monitory debugowania procesora GPU w celu włączenia tymczasowych punktów przerwania instrukcji w kroku. Tymczasowe punkty przerwania instrukcji są przekazywane do elementu ContinueDebugEvent.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId.

IDkmGroupCompiledInspectionQueryProcessor

Służy do wykonywania skompilowanego przetwarzania wyrażeń grupy.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompiledInspectionQueryKind, CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmGroupLanguageExpressionEvaluator

Ten interfejs umożliwia rozszerzenie języka w celu zapewnienia możliwości oceny wyrażeń w grupie wątków. Zazwyczaj powinno być implementowane przez wszystkie rozszerzenia językowe.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmHeuristicStackWalker

Element IDkmHeuristicStackWalker jest wywoływany przez dostawcę stosu. Jest wywoływany podczas próby przejścia przez ramki bez symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmHiddenEntryPointNotification

IDkmHiddenEntryPointNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia HiddenEntryPoint. IDkmHiddenEntryPointNotification jest wywoływana po wszystkich implementacjach IDkmHiddenEntryPointReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wyzwolony z menedżera punktu przerwania, gdy punkt przerwania punktu wejścia został trafiony w ukrytym kodzie. Rzeczywisty punkt wejścia jest opóźniony do momentu pozostawienia ukrytego kodu i może nawet nie zostać wyzwolony, jeśli nie możemy odnaleźć odpowiedniego otwarcia. Program HiddenEntryPoint zostanie wyzwolony dodatkowo dla każdej niezbędnej pracy za kulisami.

Nie można pominąć zdarzeń HiddenEntryPoint. Aby zastąpić punkt wejścia, zaimplementuj element IDkmHiddenEntryPointQuery.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmHiddenEntryPointReceived

Element IDkmHiddenEntryPointReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia HiddenEntryPoint. IDkmHiddenEntryPointReceived jest wywoływany przed IDkmHiddenEntryPointNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wyzwolony z menedżera punktu przerwania, gdy punkt przerwania punktu wejścia został trafiony w ukrytym kodzie. Rzeczywisty punkt wejścia jest opóźniony do momentu pozostawienia ukrytego kodu i może nawet nie zostać wyzwolony, jeśli nie możemy znaleźć odpowiedniego otwarcia. HiddenEntryPoint zostanie wyzwolony dodatkowo dla wszelkich niezbędnych prac w tle.

Nie można pominąć zdarzeń HiddenEntryPoint. Aby zastąpić punkt wejścia, zaimplementuj element IDkmHiddenEntryPointQuery.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmHostingProcessShowNotification

Interfejs implementowany przez składniki, które chcą dowiedzieć się, kiedy rozpoczyna się aktywne (nieukryte) debugowanie procesu hostingu (np. my_app.vshost.exe).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmIISDebuggingServices

Interfejs umożliwiający udostępnianie narzędzi debugowania usług IIS do sdM.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

IDkmIISResolver

Interfejs umożliwiający zapewnienie rozpoznawania procesów pracy url> na komputerze programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

IDkmIISResolver160

Interfejs umożliwiający zapewnienie rozpoznawania procesów procesów procesu url na> potrzeby profilowania scenariuszy.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

IDkmIISResolver170

Interfejs do udostępniania informacji o puli aplikacji usług IIS.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

IDkmILFailureReasonResolver

Usuwa plik DkmILFailureReason w komunikacie o błędzie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: CompiledInspectionQueryKind, CompilerVendorId, EngineId, LanguageId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmILInterpreter

Interfejs do interpretowania il.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmInlineFrameCount

Ten interfejs API służy do określania liczby ramek wbudowanych w lokalizacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

IDkmInlineSourceSymbolQuery

Ten interfejs API służy do odczytywania informacji o symbolach wbudowanych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmInstructionAddressOperator

Interfejs umożliwiający udostępnianie operacji specyficznych dla środowiska uruchomieniowego dla adresów instrukcji. W przypadku instrukcji natywnych i zarządzanych ta usługa jest dostarczana przez dostawcę symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmInstructionAddressProvider

Interfejs zapewniający adresy instrukcji specyficznych dla procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmInstructionAddressResolver

Interfejs zapewniający rozpoznawanie adresów procesora CPU specyficznych dla środowiska uruchomieniowego. Można to zaimplementować po stronie serwera lub klienta (np. kompilacja natywna CLR).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

IDkmInstructionPatchNotification

Interfejs implementowany przez składniki, które chcą otrzymywać powiadomienia, gdy podstawowy monitor debugowania wykonuje zapis pamięci do strumienia instrukcji. Ten interfejs można zaimplementować tylko w procesie monitorowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmInstructionStepper

Interfejs implementowany przez podstawowe monitory debugowania w celu zapewnienia krokowych elementów pierwotnych na poziomie instrukcji. Ten interfejs jest używany przez monitory debugowania środowiska uruchomieniowego w celu zaimplementowania kontroli wykonywania na poziomie użytkownika.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId.

IDkmInterceptExceptionCompletedNotification

IDkmInterceptExceptionCompletedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia InterceptExceptionCompleted. IDkmInterceptExceptionCompletedNotification jest wywoływana po wszystkich implementacjach elementu IDkmInterceptExceptionCompletedReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wysłane przez monitor debugowania po usunięciu wyjątku do określonej ramki.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmInterceptExceptionCompletedReceived

Element IDkmInterceptExceptionCompletedReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia InterceptExceptionCompleted. Przed wywołaniem elementu IDkmInterceptExceptionCompletedReceived jest wywoływana przed wywołaniem IDkmInterceptExceptionCompletedNotification. Z poziomu tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wysłane przez monitor debugowania po usunięciu wyjątku do określonej ramki.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmIntrinsicFunctionEvaluator

Ten interfejs umożliwia ewaluatorowi wyrażeń określenie operacji wewnętrznych, które mają być wywoływane za pośrednictwem il, który EE jest odpowiedzialny za implementację.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: LanguageId, SourceId.

IDkmIntrinsicFunctionEvaluator140

Ten interfejs umożliwia ewaluatorowi wyrażeń określenie operacji wewnętrznych, które mają być wywoływane za pośrednictwem il, który EE jest odpowiedzialny za implementację.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: LanguageId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmJustMyCodeEnableNotification

Interfejs do aktualizowania składników po włączeniu lub wyłączeniu funkcji JustMyCode.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmJustMyCodeProvider

Interfejs określający, czy określona lokalizacja jest kodem użytkownika.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmLanguageAsyncStepper

Ten interfejs jest implementowany przez języki, aby umożliwić zachowanie krokowe dla metod asynchronicznych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageConditionEvaluator

Ten interfejs jest implementowany przez ewaluatorów wyrażeń, które działają lub komputer docelowy i chcą obsługiwać warunkowe punkty przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageExpressionCompiler

Ten interfejs umożliwia rozszerzenie języka wstępne kompilowanie warunków punktu przerwania, dzięki czemu to samo wyrażenie może być szybko oceniane po osiągnięciu punktu przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageExpressionEvaluator

Ten interfejs umożliwia rozszerzenie języka zapewnienie możliwości oceny wyrażeń w różnych oknach inspekcji danych debugera (watch, autos, natychmiastowe, pamięci, dezasemblacji itp.). Zazwyczaj powinno być implementowane przez wszystkie rozszerzenia języka.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageFrameDecoder

Ten interfejs umożliwia rozszerzenie języka formatowanie wyświetlania nazw funkcji w oknie stosu wywołań.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageInstructionDecoder

Ten interfejs umożliwia rozszerzenie języka formatowanie wyświetlania kolumny "Funkcja" w oknie punktów przerwania oraz w innych miejscach, które próbują sformatować adres instrukcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageObjectIdProvider

Jest to opcjonalny interfejs implementowany przez ewaluatorów wyrażeń. Powinien zostać zaimplementowany przez ewaluatorów wyrażeń, które zwracają wyniki oceny z flagą "CanHaveObjectId".

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId.

IDkmLanguageReturnValueEvaluator

Ten interfejs umożliwia rozszerzeniu języka ocenę zwracanych wartości zebranych przez środowisko uruchomieniowe podczas wykonywania kroków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLanguageReturnValueEvaluator2

Ten interfejs umożliwia rozszerzeniu języka ocenę zwracanych wartości zebranych przez środowisko uruchomieniowe podczas wykonywania kroków. Jest to zamiennik elementu IDkmLanguageReturnValueEvaluator, który umożliwia składnikom pobieranie elementów danych skojarzonych z wartością zwracaną.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmLanguageStepIntoFilterCallback

Ten interfejs umożliwia rozszerzenie języka wpływać na Step-Into zachowanie natywnego środowiska uruchomieniowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId.

IDkmLaunchResumeProcess

IDkmLaunchResumeProcess służy do uruchamiania i wznawiania procesu. Jest wywoływany z monitora debugowania w klawiszu F5 i z transportu w ctrl-F5.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmLaunchResumeProcess150

Rozszerzenie do IDkmLaunchResumeProcess w celu obsługi przekazywania utworzonych procesów DkmProcess podczas wznawiania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 3 (DkmApiVersion.VS15Update3).

IDkmLoadCompleteNotification

Element IDkmLoadCompleteNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia LoadComplete. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. Moduł LoadComplete jest wysyłany przez podstawowy monitor debugowania podczas uruchamiania lub dołączania do procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmManagedAsyncTaskDecoder

Uzyskuje informacje dotyczące konstruowania ram kontynuacji zarządzanego zadania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: EngineId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmManagedFuncEvalQuickAbortServices

Interfejs umożliwiający obsługę szybkiego przerwania zarządzanego elementu func-eval.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmManagedFuncEvalServices

Interfejs udostępniany przez zarządzany monitor debugowania w celu kontynuowania procesu oceny funkcji zarządzanej.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmManagedFuncEvalServices150

Interfejs udostępniany przez zarządzany monitor debugowania w celu kontynuowania procesu oceny funkcji zarządzanej.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmManagedHeapPathsToRootProvider

Interfejs zaimplementowany przez zarządzaną dm, aby umożliwić chodzenie przez zarządzaną stertę.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 2 (DkmApiVersion.VS17Update2).

IDkmManagedHeapSampler

Interfejs zaimplementowany przez aplikację sampler w celu uzyskania przykładowej zarządzanej sterty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmManagedHeapSampler174

Interfejs implementowany przez próbkator stert w celu odroczenia analizy korzeni.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

IDkmManagedHeapSampler175

Interfejs implementowany przez próbkator stert do wykrywania zduplikowanych ciągów.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

IDkmManagedHeapSampler176

Interfejs implementowany przez próbkator stert do wykrywania zduplikowanych ciągów.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

IDkmManagedHeapSampler177

Interfejs zaimplementowany przez zarządzany przykład stertę do pobierania segmentów i analizowania zduplikowanych ciągów.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmManagedHeapSampler178

Interfejs implementowany przez próbkator stert do wykrywania przecieków programu obsługi zdarzeń.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

IDkmManagedHeapWalker

Interfejs zaimplementowany przez zarządzaną dm, aby umożliwić chodzenie przez zarządzaną stertę.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmManagedHeapWalker175

Interfejs zaimplementowany przez zarządzaną usługę DM w celu znalezienia typu ciągu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

IDkmManagedHeapWalker177

Interfejs zaimplementowany przez zarządzaną usługę DM, aby umożliwić chodzenie przez zarządzaną stertę. Uwidacznia metody związane ze śledzeniem odwołań zarządzanych do obiektów natywnych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmManagedReturnValueFetcher

Uzyskuje informacje o wartości zwracanej zarządzanej z zarządzanej maszyny zarządzanej do oceny.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmManagedSteppingCodePathProvider

Używany przez managedDM do wykonywania zapytań o informacje o ścieżce kodu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmManagedTaskServices

Udostępnia usługi dostawcom zadań i monitorom debugowania na potrzeby uzyskiwania informacji o zadaniach zarządzanych. Jest to implementowane przez shim Managed EE.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmManagedTaskServices158

Udostępnia usługi dostawcom zadań i monitorom debugowania na potrzeby uzyskiwania informacji o zadaniach zarządzanych. Jest to implementowane przez inspektora CLR. Ten interfejs może ulec zmianie w przyszłych wersjach.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmManagedThreadProperties

Uwidacznia właściwości zarządzanego wątku, takiego jak zarządzany identyfikator wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmMCppSymbolProvider

Dostawca symboli dla zarządzanego języka C++.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1).

IDkmMemoryOperation

Zaimplementowane przez podstawowe monitory debugowania w celu zapewnienia dostępu do pamięci procesu docelowego. Ten interfejs jest również implementowany przez składniki wyższego poziomu w celu zapewnienia buforowania pamięci. Podstawowe monitory debugowania są odpowiedzialne za wykonywanie operacji we/wy pamięci, utrzymywanie tabeli niewidocznych zapisów i dostarczanie zdarzeń po zaktualizowaniu niewidocznej tabeli zapisu (za pośrednictwem DkmProcess.OnInstructionPatchInserted/Removed).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmMergedMonitorStackWalk

Element IDkmMergedMonitorStackWalk jest wywoływany przez dostawcę stosu. Będzie arbitrate między różnymi implementacjami IDkmMonitorStackWalk do chodzenia części stosu, które powinny być chodzić wewnątrz monitora (zamiast chodzić wewnątrz silnika).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmMergedMonitorStackWalk164

Dostawca stosu wywołuje element IDkmMergedMonitorStackWalk164. Będzie arbitrate między różnymi implementacjami IDkmMonitorStackWalk do chodzenia części stosu, które powinny być chodzić wewnątrz monitora (zamiast chodzić wewnątrz silnika).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4).

IDkmMinidumpQuery

Uzyskuje informacje o debugowaniu minidump.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmMinidumpQuery1610

Uzyskuje informacje o debugowaniu minidump.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10).

IDkmMinidumpThreadInfo

Uzyskuje informacje o stanie wątku przechowywane w minidump.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

IDkmModuleCreateNotification

Element IDkmModuleCreateNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ModuleCreate. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. ModuleCreate jest wysyłany, gdy dostawca symboli ładuje nowe symbole, a tym samym jest tworzony nowy moduł DkmModule. Moduł DkmModule będzie istnieć tylko dla wystąpień modułów, które mają symbole.

ModułTworzenie zdarzeń można pominąć. W takim przypadku moduł będzie niewidoczny dla składników powyżej poziomu, na którym moduł został pominięty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

IDkmModuleInstanceDisabledNotification

Interfejs implementowany przez monitory debugowania w celu wykonywania aktualizacji po zmianie właściwości "Disabled" modułu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleInstanceLoadNotification

Element IDkmModuleInstanceLoadNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ModuleInstanceLoad. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. ModułInstanceLoad jest wyzwalany po załadowaniu modułu przez proces docelowy. Między innymi to zdarzenie jest używane przez dostawców symboli do ładowania symboli, a menedżer punktu przerwania ustawia punkty przerwania. ModuleInstanceLoad jest wyzwalany dla wszystkich modułów, nawet jeśli nie ma załadowanych symboli.

Zdarzenia ModuleInstanceLoad można pominąć. W takim przypadku moduł będzie niewidoczny dla składników powyżej poziomu, na którym moduł został pominięty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleInstanceUnloadNotification

Element IDkmModuleInstanceUnloadNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ModuleInstanceUnload. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. ModułInstanceUnload jest wysyłany, gdy monitor wykryje, że moduł został zwolniony z procesu docelowego.

Nie można pominąć zdarzeń ModuleInstanceUnload. Jeśli jednak zdarzenie ModuleLoad zostało pominięte, modułUnload zatrzyma przetwarzanie na poziomie, na którym moduł ModuleLoad został pominięty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleLocator

Interfejs zaimplementowany przez monitory debugowania, które obsługują zrzuty debugowania, aby umożliwić interfejsowi wyszukiwania plików binarnych, które nie zostały znalezione podczas pierwotnego ładowania zrzutu. Ścieżka symboli jest aktualizowana przez interfejs użytkownika, jeśli użytkownik wybierze ścieżkę podczas wyszukiwania pliku binarnego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleMetadataStatusQuery

Podczas debugowania minidump zarządzanego określa, czy metadane są dostępne dla danego wystąpienia modułu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmModuleModifiedNotification

Składniki powinny implementować ten interfejs, aby był informowany o tym, kiedy moduł zmienia się z powodu enC lub dynamicznie emitowanego kodu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmModuleSymbolSearchResult175

Umożliwia pobieranie wyników wyszukiwania symboli dla wystąpienia modułu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

IDkmModuleSymbolsLoaded

Interfejs implementowany przez podstawowe monitory debugowania w celu wyzwolenia zdarzenia załadowanego symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleSymbolsLoadedNotification

Element IDkmModuleSymbolsLoadedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ModuleSymbolsLoaded. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. ModułSymbolsLoaded jest wysyłany po załadowaniu symboli dla określonego wystąpienia modułu. Jest to wysyłane, gdy symbole są ładowane jako dll/exe ładowane w procesie docelowym lub gdy użytkownik poprosi o ponowne załadowanie symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleSymbolsReload

Umożliwia zastąpienie pliku symboli bazowego modułu DkmModule.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

IDkmModuleSymbolsReload175

Umożliwia zastąpienie elementu ISymUnmanagedReader bazowego modułu DkmModule.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

IDkmModuleSymbolsReplacedNotification

Element IDkmModuleSymbolsReplacedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ModuleSymbolsReplaced. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. ModułSymbolsReplaced jest wyzwalany po zastąpieniu symboli modułu. Zazwyczaj ze względu na operacje, takie jak dekompilacja.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

IDkmModuleSymbolsUpdatedNotification

Element IDkmModuleSymbolsUpdatedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ModuleSymbolsUpdated. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. ModuleSymbolsUpdated jest wysyłany przez monitor debugowania, gdy dynamiczny kod w procesie docelowym aktualizuje stan symbolu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmModuleUserCodeDeterminer

Interfejs zaimplementowany w celu zapewnienia stanu Just-My-Code dla modułów. Aby obsługiwać okno modułów, ten interfejs powinien zostać zaimplementowany w składniku IDE, ale można go również zaimplementować po stronie monitora, jeśli jest to przydatne. Firma Microsoft implementuje ten interfejs po stronie monitora dla kodu zarządzanego, ale nie natywnego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmMonitorStackWalk

Analizuje część stosu, który pochodzi z określonej klasy DkmRuntimeInstance i zwraca ramki z tego środowiska uruchomieniowego. IDkmMonitorStackWalk służy do tego chodzenia na komputerze docelowym i zazwyczaj robi ten spacer bez symboli. Należy zauważyć, że dokładny przewodnik stosu monitora zwykle wymaga: 1. Monitor środowiska uruchomieniowego, aby w pełni zrozumieć konwencję wywoływania jego bazowego środowiska uruchomieniowego, a środowisko uruchomieniowe stosuje pewien mechanizm, dzięki czemu nie potrzebuje kodu z innych środowisk uruchomieniowych, które znajdują się na stosie do chodzenia. Na przykład clR utrzymuje zakresy stosu, więc gdy kod zarządzany jest wywoływany natywne, środowisko CLR nadal może znaleźć zarządzany kod bez konieczności przechodzenia przez metodę natywną. -or- 2. Jednolita konwencja wywoływania, zgodnie z którą musi przestrzegać cały kod. Na przykład cały kod musi być zgodny z jednolitą konwencją wywoływania w wersjach systemu Windows x64 i IA-64. Firma Microsoft zapewni pięć implementacji IDkmMonitorStackWalk: 1. Implementacja ICorDebug w wersji 2 2. Implementacja ICorDebug w wersji 4 3. Implementacja dla chodzenia x64/ia64 PDATA. 4. Implementacja dla języka ActiveScript. 5. Domyślna implementacja, która łączy ze sobą nieznane regiony, które mają być wdrażane w procesie aparatu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

IDkmNameUndecorator

Ten interfejs API służy do cofania nazw symboli. Firma Microsoft udostępnia implementację tej funkcji w celu niezdefiniowania nazw symboli w plikach PDB.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

IDkmNativeCppEditAndContinueNotification

Interfejs implementowany przez składniki do nasłuchiwania natywnych powiadomień ENC.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmNativeDebuggingEnableNotification

Interfejs do aktualizowania składników, gdy debugowanie natywne jest włączone lub wyłączone dla określonego procesu. Należy pamiętać, że w przypadku programu Visual Studio 11 nie można włączyć/wyłączyć debugowania natywnego na bieżąco, ale przyszłe wersje mogą obsługiwać tę funkcję.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmNativeEditAndContinueUpdate

Interfejs implementowany przez natywną edycję i kontynuuj aparat w celu zapewnienia stosowania oczekujących zmian kodu, walidacji i zatwierdzenia.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmNativeEditAndContinueUpdate140A

Interfejs implementowany przez natywną edycję i kontynuuj aparat, aby zezwolić na anulowanie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1).

IDkmNativeExportsEnableNotification

Interfejs do aktualizowania składników, gdy opcja "IsNativeExportsEnabled" jest włączona lub wyłączona.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmNativeExportTableDecoder

Zapewnia dekodowanie tabel eksportu w plikach systemu Windows PE.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmNativeExportTableDecoder150

Zapewnia dodatkowe dekodowanie tabel eksportu w plikach systemu Windows PE.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmNativeJustMyCodeProvider158

Interfejs określający, czy określona lokalizacja jest kodem użytkownika.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmNativeJustMyCodeSteppingEnableNotification

Interfejs do aktualizowania składników, gdy natywne krokowanie JustMyCode jest włączone lub wyłączone.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmNativeStackCallback

Zapewnia mechanizm podstawowego monitora debugowania i natywnego monitora debugowania w celu uzyskania informacji o ramkach stosu, które mogą wymagać obsługi symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmNativeSteppingCallSiteProvider

Wywoływana przez natywny element implementatora IDkmSteppingCodePathDecoder w celu wyliczenia native CodePaths.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmNativeSymbolProviderCallback

Interfejs wywołania zwrotnego implementowany przez dostawcę symboli PDB na potrzeby zwracania informacji o symbolach do podstawowego monitora debugowania. Ten interfejs powinien być zwykle implementowany na komputerze programu Visual Studio. Implementacje po stronie monitora debugowania mogą nie być wywoływane.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmNativeSymbolProviderCallback120a

Opcjonalny interfejs, który może być implementowany przez natywnych dostawców symboli i używany przez natywną dm, aby umożliwić wykonywanie kroków. Jeśli nie zostanie zaimplementowana, natywna dm powróci do elementu IDkmNativeSymbolProviderCallback.GetNativeInstructionMetadataCallback i IDkmSymbolProviderCallback.GetSteppingRanges.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmNatvisComplexityLimitChangedNotification

Interfejs do aktualizowania składników podczas zmiany limitu złożoności natvis.

Implementacje tego interfejsu są zawsze wywoływane (filtrowanie nie jest obsługiwane). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmNatvisRecursionLimitChangedNotification

Interfejs do aktualizowania składników podczas zmiany limitu rekursji natvis.

Implementacje tego interfejsu są zawsze wywoływane (filtrowanie nie jest obsługiwane). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmNonDebugProcessExitNotification

IDkmNonDebugProcessExitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia NonDebugProcessExit. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. NonDebugProcessExit jest wyzwalany po zakończeniu skojarzonego procesu bez debugowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9).

IDkmObjectFavoritesProvider

Udostępnia środowisko IDE z funkcją dodawania i usuwania ulubionych elementów w obiektach w oknach EE.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4).

IDkmOutOfBandExceptionNotification

Element IDkmOutOfBandExceptionNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia OutOfBandException. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. Zdarzenie "OutOfBandException" zapewnia powiadomienie z monitorów debugowania o wyjątkach poza pasmem, które występują w procesie docelowym podczas debugowania międzyoperacyjności zarządzanej/natywnej. To powiadomienie o zdarzeniu jest używane przez menedżera wyjątków. Zdarzenia poza pasmem mogą wystąpić w dowolnym momencie (w tym po zatrzymaniu) i muszą być kontynuowane natychmiast.

Zdarzenia OutOfBandException można pominąć przez wywołanie metody DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId.

Ten interfejs API został wprowadzony w programie Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1).

IDkmOutOfBandProcessContinueNotification

Dostarcza powiadomienia, gdy proces docelowy ma zostać wznowiony ze zdarzenia debugowania poza pasmem podczas debugowania międzyoperatywnego zarządzanego w potoku procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1).

IDkmOutOfProcessSymbolLoadingEnabledNotification

Interfejs do aktualizowania składników podczas ładowania symboli natywnych poza procesem jest włączony lub wyłączony.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

IDkmPendingFileLineBreakpointCallback

Ten interfejs jest implementowany przez składniki, które chcą dodać obiekty DkmPendingFileLineBreakpoint do menedżera punktu przerwania. Menedżer punktu przerwania wyśle zapytanie o bieżącą lokalizację przy pierwszym powiązaniu i podczas stosowania polecenia Edytuj i Kontynuuj.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId.

IDkmPerformanceMeasurement140

Interfejs służący do zbierania danych wydajności z debuggee.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmProcessContinueNotification

Dostarcza powiadomienie, gdy proces docelowy ma zostać wznowiony. Zostanie ona wyzwolona po trafieniu klawisza F5 przez użytkownika, rozpoczęciu func-eval, zakończeniu wstrzymania zdarzenia (np. załadowaniu modułu) lub zakończeniu zdarzenia zatrzymania. Głównym celem tego zdarzenia jest umożliwienie składnikom opróżniania wszystkich pamięci podręcznych, które mają.

To powiadomienie może zostać wyzwolone z dowolnego wątku, ale nie zostanie wyzwolone ponownie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmProcessCreateNotification

IDkmProcessCreateNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ProcessCreate. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i będzie można go zbadać. Funkcja ProcessCreate jest uruchamiana po utworzeniu obiektu DkmProcess. Oznacza to, że debuger rozpoczął dołączanie do określonego procesu. W scenariuszach uruchamiania to zdarzenie jest wyzwalane, zanim będzie można uruchomić dowolny kod w procesie docelowym.

Implementacje mogą filtrować wyłącznie w oparciu o typ kodu w procesie docelowym, a programy obsługi będą również uruchamiane, gdy wątek interfejsu użytkownika jest blokowany, aż aparat powróci. Z tych powodów jest często lepiej nasłuchiwać zdarzenia RuntimeInstanceLoad.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmProcessDebuggerInitializeWaiter

Opcjonalny interfejs implementowany przez podstawowe monitory debugowania, które używają tego samego wątku zdarzeń dla wielu procesów.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmProcessExecutionNotification

Zawiera powiadomienie, że proces zostanie wstrzymany lub wznowiony.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmProcessExitNotification

Element IDkmProcessExitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ProcessExit. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Element ProcessExit jest wyzwalany, gdy debuger nie debuguje już określonego procesu. Może to być spowodowane tym, że debuger odłączył się od określonego procesu lub dlatego, że proces zakończył się.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmProcessLaunchEnvironmentFilter

Opcjonalny interfejs, który można zaimplementować w celu dostosowania środowiska procesu docelowego przed jego uruchomieniem. Można dostosować środowisko z dwóch punktów. Po stronie środowiska IDE obiekt wywołujący launchDebugTargets może określić blok środowiska. Po stronie monitora debugowania można zaimplementować ten interfejs API. Ten interfejs API jest sugerowany, jeśli po stronie środowiska IDE nie ma wystarczającej ilości informacji, aby poprawnie określić środowisko, lub jeśli rozszerzenie nie kontroluje wywołania elementu LaunchDebugTargets.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId.

IDkmProcessLaunchEnvironmentFilter140

Opcjonalny interfejs, który można zaimplementować w celu dostosowania środowiska procesu docelowego przed jego uruchomieniem. Jest to zaktualizowana wersja elementu IDkmProcessLaunchEnvironmentFilter, która została dodana dla programu Visual Studio 14.0 w celu udostępnienia dodatkowych informacji do filtrów środowiska. Program Visual Studio 14+ wywoła zarówno stary, jak i nowy interfejs API, dlatego składnik zazwyczaj nie powinien implementować obu interfejsów.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmProcessQueryOperation

Zapytanie o stan procesu debugowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmProcessSnapshotAddedNotification

IDkmProcessSnapshotAddedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ProcessSnapshotAdded. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Metoda ProcessSnapshotAdded jest uruchamiana po utworzeniu elementu DkmProcessSnapshot i dodaniu go do skojarzonego procesu DkmProcess.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

IDkmProcessSnapshotRemovedNotification

IDkmProcessSnapshotRemovedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ProcessSnapshotRemoved. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. ProcessSnapshotRemoved jest wyzwalany po usunięciu DkmProcessSnapshot ze skojarzonych procesów DkmProcess.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

IDkmProductionAgent

Operacje agenta związane z diagnostyką produkcyjną. Agent zostanie uruchomiony przy użyciu przekierowania STDIN i STDOUT. Klient może zapisywać dane w usłudze STDIN, wysyłając ciąg UTF8 za pomocą metody SendMessage. Gdy proces jest zapisywany w źródle STDOUT, DkmCustomMessage::SendToVsService jest wywoływany z identyfikatorem źródła ustawionym na DkmProductionAgent::UniqueId i zakodowaną zawartość UTF8 w parametrm1.

Implementacje tego interfejsu są zawsze wywoływane (filtrowanie nie jest obsługiwane). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 2 (DkmApiVersion.VS15Update2).

IDkmProductionConnection

Operacje związane z diagnostyką produkcyjną.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 2 (DkmApiVersion.VS15Update2).

IDkmRecordedProcessInfoProvider

Interfejs zaimplementowany przez podstawowe usługi DM, aby zapewnić zarejestrowane informacje o procesie bez debugowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmRegisterWrite

Umożliwia odczytywanie lub zapisywanie wartości rejestru przez stałą CV.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmRequireFullTrustForSourceServerNotification

Interfejs aktualizowania składników, gdy pozycja RequireFullTrustForSourceServer jest włączona lub wyłączona.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmReturnValuesNotification

IDkmReturnValuesNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ReturnValues. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Zdarzenie ReturnValues jest wysyłane podczas kroku, gdy zebrano co najmniej jedną wartość DkmRawReturnValues. Rzeczywista ocena zostanie przeprowadzona na zdarzeniu StepComplete w wątku, w którym zarejestrowano wartości zwracane.

Zdarzenia ReturnValues można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmRunningProcessInfoProvider

Interfejs zaimplementowany przez podstawowe usługi DM w celu udostępnienia listy procesów i podaj podstawowe informacje na temat uruchamiania procesów bez dołączania debugera do procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: TransportKind.

IDkmRunningProcessInfoProvider160

Interfejs zaimplementowany przez podstawowe usługi DM w celu udostępnienia listy procesów i podaj podstawowe informacje na temat uruchamiania procesów bez dołączania debugera do procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

IDkmRuntimeBreakpointConditionFailedNotification

IDkmRuntimeBreakpointConditionFailedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeBreakpointConditionFailed. IDkmRuntimeBreakpointConditionFailedNotification jest wywoływana po wszystkich implementacjach IDkmRuntimeBreakpointConditionFailedReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zawiera powiadomienie, że punkt przerwania środowiska uruchomieniowego został trafiony, ale stan punktu przerwania napotyka błąd czasu wykonywania.

Zdarzenia RuntimeBreakpointConditionFailed można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3).

IDkmRuntimeBreakpointConditionFailedReceived

IDkmRuntimeBreakpointConditionFailedReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeBreakpointConditionFailed. IDkmRuntimeBreakpointConditionFailedReceived jest wywoływany przed IDkmRuntimeBreakpointConditionFailedNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zawiera powiadomienie, że punkt przerwania środowiska uruchomieniowego został trafiony, ale stan punktu przerwania napotyka błąd czasu wykonywania.

Zdarzenia RuntimeBreakpointConditionFailed można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3).

IDkmRuntimeBreakpointHitWithErrorNotification

IDkmRuntimeBreakpointHitWithErrorNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeBreakpointHitWithError. IDkmRuntimeBreakpointHitWithErrorNotification jest wywoływana po wszystkich implementacjach IDkmRuntimeBreakpointHitWithErrorReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zawiera powiadomienie, że punkt przerwania środowiska uruchomieniowego został trafiony, ale przetwarzanie spowodowało błąd niemożliwy do odzyskania. Proces jest teraz zatrzymany, a punkt przerwania jest teraz w stanie błędu i nie zostanie ponownie trafiony.

Zdarzenia RuntimeBreakpointHitWithError można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmRuntimeBreakpointHitWithErrorReceived

IDkmRuntimeBreakpointHitWithErrorReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeBreakpointHitWithError. IDkmRuntimeBreakpointHitWithErrorReceived jest wywoływany przed IDkmRuntimeBreakpointHitWithErrorNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zawiera powiadomienie, że punkt przerwania środowiska uruchomieniowego został trafiony, ale przetwarzanie spowodowało błąd niemożliwy do odzyskania. Proces jest teraz zatrzymany, a punkt przerwania jest teraz w stanie błędu i nie zostanie ponownie trafiony.

Zdarzenia RuntimeBreakpointHitWithError można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmRuntimeBreakpointNotification

IDkmRuntimeBreakpointNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeBreakpoint. IDkmRuntimeBreakpointNotification jest wywoływana po wszystkich implementacjach elementu IDkmRuntimeBreakpointReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zapewnia powiadomienie o trafieniu punktu przerwania środowiska uruchomieniowego (DkmRuntimeBreakpoint). Punkty przerwania środowiska uruchomieniowego to obiekty punktu przerwania niskiego poziomu. Powiadomienie o punktach przerwania wyższego poziomu (DkmPendingBreakpoint/DkmBoundBreakpoint) jest uzyskiwane za pośrednictwem zdarzenia BoundBreakpointHit.

Zdarzenia RuntimeBreakpoint można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmRuntimeBreakpointReceived

IDkmRuntimeBreakpointReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeBreakpoint. IDkmRuntimeBreakpointReceived jest wywoływany przed IDkmRuntimeBreakpointNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zapewnia powiadomienie o trafieniu punktu przerwania środowiska uruchomieniowego (DkmRuntimeBreakpoint). Punkty przerwania środowiska uruchomieniowego to obiekty punktu przerwania niskiego poziomu. Powiadomienie o punktach przerwania wyższego poziomu (DkmPendingBreakpoint/DkmBoundBreakpoint) jest uzyskiwane za pośrednictwem zdarzenia BoundBreakpointHit.

Zdarzenia RuntimeBreakpoint można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmRuntimeDataBreakpointHitNotification

IDkmRuntimeDataBreakpointHitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeDataBreakpointHit. IDkmRuntimeDataBreakpointHitNotification jest wywoływana po wszystkich implementacjach elementu IDkmRuntimeDataBreakpointHitReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Zapewnia powiadomienie, że punkt przerwania danych środowiska uruchomieniowego został trafiony.

Zdarzenia RuntimeDataBreakpointHit można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmRuntimeDataBreakpointHitReceived

IDkmRuntimeDataBreakpointHitReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeDataBreakpointHit. IDkmRuntimeDataBreakpointHitReceived jest wywoływany przed IDkmRuntimeDataBreakpointHitNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Zapewnia powiadomienie, że punkt przerwania danych środowiska uruchomieniowego został trafiony.

Zdarzenia RuntimeDataBreakpointHit można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmRuntimeDisassemblyProvider

Służy do dezasemblacji instrukcji w przestrzeni adresowej debuggee w odniesieniu do określonego środowiska uruchomieniowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmRuntimeFunctionResolver

Ten interfejs jest implementowany przez ewaluatorów wyrażeń, które są ładowane na komputerze docelowym do mapowania między wyrażeniem funkcji/adresu i instrukcjami reprezentowanymi przez nią. Służy do wiązania punktów przerwania funkcji. Oprócz ewaluatorów wyrażeń ten interfejs może być również implementowany przez inne składniki, które mogą chcieć powiązać punkty przerwania funkcji przy użyciu danych z procesu docelowego (np. natywne punkty przerwania funkcji eksportu).

Składniki filtrowania na podstawie identyfikatorów LanguageId i/lub VendorId powinny upewnić się, że identyfikator Guid.Empty jest jedną z akceptowanych wartości w filtrze. Aby uzyskać więcej informacji, zobacz DkmRuntimeFunctionResolutionRequest.CompilerId.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId.

IDkmRuntimeFunctionResolverClient

Ten interfejs jest implementowany przez menedżera punktów przerwania, dzięki czemu może otrzymywać powiadomienie, że żądanie rozpoznawania funkcji środowiska uruchomieniowego zostało rozwiązane w nowej funkcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId.

IDkmRuntimeHandleComparer

Ten interfejs umożliwia składnikom Concord porównanie dwóch wartości obiektów ICorDebugHandleValue przez kierowanie wywołań do getValue za pośrednictwem podkładki EE w celu skonfigurowania odpowiedniego obiektu LocalContext. Wywołanie metody GetValue bezpośrednio w obiekcie ICorDebugHandleValue z pliku Concord spowoduje zgłoszenie wyjątku z hosta VIL.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmRuntimeInstanceLoadCompleteNotification

IDkmRuntimeInstanceLoadCompleteNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeInstanceLoadComplete. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Element RuntimeInstanceLoadComplete jest wysyłany przez podstawowy monitor debugowania podczas uruchamiania lub dołączania do procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2).

IDkmRuntimeInstanceLoadNotification

IDkmRuntimeInstanceLoadNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeInstanceLoad. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. RuntimeInstanceLoad jest wyzwalany po utworzeniu obiektu DkmRuntimeInstance. To zdarzenie może służyć do wykrywania, że określony typ kodu (np. natywny) jest teraz debugowany w tym procesie docelowym. W scenariuszach uruchamiania zdarzenie RuntimeInstanceLoad zostanie wyzwolone przed uruchomieniem dowolnego kodu określonego typu w procesie docelowym. Podczas debugowania kodu natywnego obejmuje to cały kod w procesie docelowym.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmRuntimeInstanceUnloadNotification

IDkmRuntimeInstanceUnloadNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia RuntimeInstanceUnload. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. RuntimeInstanceUnload jest wyzwalany, gdy środowisko wykonawcze zwalnia się z procesu docelowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmRuntimeManagedHardwareDataBreakpointInfoProvider

Udostępnia wartości CLR dla zarządzanych bps danych sprzętowych.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

IDkmRuntimeMonitorBreakpointHandler

Udostępnia usługi umożliwiające ustawianie i usuwanie punktów przerwania. Ten interfejs jest implementowany przez monitor debugowania dla większości środowisk uruchomieniowych. Implementacja musi używać elementu danych do śledzenia okresu istnienia każdego włączonego punktu DkmRuntimeBreakpoint, aby można było niejawnie wyłączyć punkt przerwania po zamknięciu punktu przerwania DkmRuntimeBreakpoint.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmRuntimeSetNextStatement

IDkmRuntimeSetNextStatement to monitory środowiska uruchomieniowego interfejsu implementowane w celu obsługi zestawu następnej instrukcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmRuntimeStepper

IDkmRuntimeStepper to monitory środowiska uruchomieniowego interfejsu implementowane w celu obsługi kroków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmScriptDocumentContentInsertNotification

IDkmScriptDocumentContentInsertNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ScriptDocumentContentInsert. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Powiadomienie o dodaniu nowej zawartości do procesu docelowego. W przypadku dokumentów agregowanych (DkmScriptDocumentFlags.AggregateDocument jest ustawiona), jest to nowa sekcja dokumentu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmScriptDocumentContentRemoveNotification

IDkmScriptDocumentContentRemoveNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ScriptDocumentContentRemove. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Powiadomienie, że zawartość została usunięta z procesu docelowego. W przypadku dokumentów agregowanych (DkmScriptDocumentFlags.AggregateDocument jest ustawiona), odpowiada to usuniętej sekcji tekstowej.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmScriptDocumentProvider

Zaimplementowane przez składniki, które tworzą obiekty DkmScriptDocument w celu udostępnienia zawartości i powiadomień dokumentu po zmianie zawartości.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmScriptDocumentQuery

Interfejs API zaimplementowany przez agenta lokalnego skryptu w celu dopasowania dokumentów skryptów do żądań punktów przerwania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmScriptDocumentSourceProjectItemChanged

Interfejs służą do aktualizowania składników, gdy ścieżka elementu projektu jest ustawiona dla dokumentu skryptu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmScriptDocumentSymbolProvider

Zaimplementowane przez składniki, które tworzą obiekty DkmScriptDocument i używają ich jako podstawy rozpoznawania symboli. Ten interfejs nie musi być implementowany przez system dokumentów skryptu, który pozostawia DkmResolvedDocument.ScriptDocument jako null.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

IDkmScriptDocumentTreeNodeCreateNotification

Element IDkmScriptDocumentTreeNodeCreateNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ScriptDocumentTreeNodeCreate. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Powiadomienie o utworzeniu nowego obiektu DkmScriptDocumentTreeNode.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

IDkmScriptDocumentTreeNodeUnloadNotification

IDkmScriptDocumentTreeNodeUnloadNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ScriptDocumentTreeNodeUnload. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Powiadomienie o tym, że element DkmScriptDocumentTreeNode został zwolniony z procesu docelowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId.

IDkmScriptJmcStateChangeNotification

IDkmScriptJmcStateChangeNotification jest implementowany przez składniki, które mają być powiadamiane, gdy stan JMC zmieni się dla dokumentu skryptu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmScriptSymbolCallback

Interfejs wywołania zwrotnego zaimplementowany przez dostawców symboli skryptu w celu obsługi dostosowywania kroków dla języków skompilowanych w języku JavaScript (lub ewentualnie innych językach skryptów).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: RuntimeId, SymbolProviderId.

IDkmScriptSymbolsUpdatedNotification

IDkmScriptSymbolsUpdatedNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ScriptSymbolsUpdated. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Powiadomienie, że stan symbolu dla co najmniej jednego dokumentu skryptu został zaktualizowany. Służy to do ponownego powiązania punktów przerwania w modułach opartych na skryptach.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmSerializedProcessInfoProvider

Interfejs zaimplementowany przez podstawowe monitory debugowania, które obsługują format zrzutu procesu. Obecnie zaimplementowane przez maszynę BDM z zrzutu podstawowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8).

IDkmSerializedProcessInfoProviderFactory

Interfejs fabryczny umożliwiający uzyskanie wystąpienia IDkmSerializedProcessInfoProvider.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8).

IDkmSetNextStatementQuery

Umożliwia interfejsowi użytkownika wykonywanie zapytań, jeśli można ustawić bieżącą instrukcję na adres. Należy zaimplementować po stronie klienta, ponieważ może być wywoływana w scenariuszach wymagających szybkiego wyniku, takiego jak przeciąganie adresu IP w edytorze debugera.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmSingleStepCompleteNotification

IDkmSingleStepCompleteNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia SingleStepComplete. IDkmSingleStepCompleteNotification jest wywoływana po wszystkich implementacjach IDkmSingleStepCompleteReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wysyłane po zakończeniu pojedynczego kroku wątku.

Zdarzenia SingleStepComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId.

IDkmSingleStepCompleteReceived

IDkmSingleStepCompleteReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia SingleStepComplete. IDkmSingleStepCompleteReceived jest wywoływany przed IDkmSingleStepCompleteNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wysyłane po zakończeniu pojedynczego kroku wątku.

Zdarzenia SingleStepComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SourceId.

IDkmSourceLinkQuery

Ten interfejs API służy do odczytywania Source Link informacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

IDkmSourceLinkSymbolQuery

Ten interfejs API służy do odczytywania informacji o konfiguracji Source Link od dostawcy symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

IDkmSourceServerSymbolQuery

Ten interfejs API służy do odczytywania informacji o danych serwera źródłowego od dostawcy symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

IDkmStackProvider

Udostępnia stos do wyświetlania przez użytkownika. Ten stos został przefiltrowany, anotowany i mieszany razem.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmStackWalkFrameAnnotationTextProvider

Zawiera tekst prefiksu adnotacji ramki stosu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmStackWalkFrameInterfaceProvider

Ten interfejs jest implementowany przez składniki, które współtworzyją ramki stosu i chcą zapewnić dodatkowy interfejs inspekcji dla ewaluatorów wyrażeń i innych składników, które muszą sprawdzić ramkę stosu.

UWAGA: interfejs API kontenera danych nie powinien być używany z implementacji zwróconego interfejsu niestandardowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmStackWalkFrameInterfaceProvider2

Ten interfejs jest implementowany przez zarządzany monitor debugowania i zapewnia dostęp do elementu ICorDebugFrame.

UWAGA: interfejs API kontenera danych nie powinien być używany z implementacji zwróconego interfejsu niestandardowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmStartDebuggingOperations

Ten interfejs zawiera interfejs API umożliwiający uruchomienie nowego procesu w debugerze lub dołączenie debugera do istniejącego procesu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmStepCompleteNotification

IDkmStepCompleteNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia StepComplete. IDkmStepCompleteNotification jest wywoływana po wszystkich implementacjach elementu IDkmStepCompleteReceived. Po wywołaniu tego powiadomienia proces docelowy jest zatrzymany, a implementatory mogą przeprowadzić inspekcję procesu lub spowodować jego wykonanie w kontrolowany sposób (slip, func-eval).

Wysyłane przez monitor środowiska uruchomieniowego po pomyślnym ukończeniu kroku. Należy pamiętać, że krok może rzeczywiście zakończyć się w innym wątku niż został uruchomiony.

Zdarzenia StepComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmStepCompleteReceived

IDkmStepCompleteReceived jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia StepComplete. IDkmStepCompleteReceived jest wywoływany przed IDkmStepCompleteNotification. W ramach tego powiadomienia nie można spowodować wykonania procesu docelowego (bez func-eval, bez poślizgu).

Wysyłane przez monitor środowiska uruchomieniowego po pomyślnym ukończeniu kroku. Należy pamiętać, że krok może rzeczywiście zakończyć się w innym wątku niż został uruchomiony.

Zdarzenia StepComplete można pominąć przez wywołanie DkmEventDescriptorS.Suppress().

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmStepOverPropertiesAndOperatorsEnableNotification

Interfejs aktualizowania składników, gdy właściwość "IsStepOverPropertiesAndOperatorsEnabled" jest włączona lub wyłączona.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmSteppingCodePathProvider

Używany przez usługę AD7 do uzyskiwania szczegółowych opcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, RuntimeId, SymbolProviderId.

IDkmSteppingManager

Interfejs menedżera kroków. Ten składnik jest implementowany przez firmę Microsoft i zapewnia arbitraż między różnymi monitorami debugowania aktywnymi w procesie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmSteppingManagerCallback

Umożliwia monitorowanie środowiska uruchomieniowego uzyskiwanie informacji z menedżera kroków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

IDkmSteppingManagerCallback11a

Rozszerzenie monitorów środowiska uruchomieniowego informacji może uzyskać od menedżera kroków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1).

IDkmSteppingManagerCallback169

Rozszerzenie monitorów środowiska uruchomieniowego informacji może uzyskać od menedżera kroków.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SourceId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9).

IDkmStopDebuggingOperations

Ten interfejs zawiera interfejs API do zatrzymywania debugowania. Ten interfejs musi być zaimplementowany przez podstawowe monitory debugowania. Istnieje również możliwość zaimplementowania tego interfejsu w celu dostosowania środowiska zatrzymywania debugowania dla określonej aplikacji. Na przykład składnik może ponownie zaimplementować zakończenie, aby debuger mógł bezpiecznie zamknąć aplikację zamiast interfejsu API TerminateProcess Win32.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmStowedExceptionProvider

Interfejs zaimplementowany przez minidump BDM w celu wykonywania zapytań dotyczących informacji o wyjątku stowed.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3).

IDkmSuppressOptimizationsEnableNotification

Interfejs aktualizowania składników, gdy opcja "IsSuppressOptimizationsEnabled" jest włączona lub wyłączona.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmSymbolAlternateSourcePositionQuery

Opcjonalny interfejs implementowany przez dostawców symboli, którzy chcą udostępnić wiele mapowań źródłowych dla tego samego symbolu instrukcji — zarówno mapowanie podstawowe, jak i mapowanie kopii zapasowej w przypadku, gdy nie można odnaleźć dokumentu podstawowego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3).

IDkmSymbolCompilerIdQuery

Ten interfejs API służy do pobierania identyfikatora kompilatora dla danego symbolu. Jest on implementowany przez dostawców symboli, którzy obsługują magazyny symboli, w których plik binarny może zawierać wiele języków. Innymi słowy, ten interfejs musi być zaimplementowany tylko wtedy, gdy DkmModule.CompilerId jest guid.Empty/Guid.Empty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

IDkmSymbolCompilerIdQueryCallback

Ten interfejs API służy do pobierania identyfikatora kompilatora dla danego symbolu. Jest on implementowany przez dostawców symboli, którzy obsługują magazyny symboli, w których plik binarny może zawierać wiele języków. Innymi słowy, ten interfejs musi być zaimplementowany tylko wtedy, gdy DkmModule.CompilerId jest guid.Empty/Guid.Empty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

IDkmSymbolDisassemblyQuery

Ten interfejs API służy do rozpoznawania symboli w oknie dezasemblacji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

IDkmSymbolDocumentCollectionQuery

Interfejs API zaimplementowany przez dostawców symboli, aby umożliwić menedżerowi punktów przerwania i innym składnikom wykonywanie zapytań dotyczących kolekcji dokumentów wewnątrz magazynu symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

IDkmSymbolDocumentSpanQuery

Interfejs API zaimplementowany przez dostawców symboli, aby umożliwić menedżerowi punktów przerwania i innym składnikom wykonywanie zapytań o mapę "symbol span-symbol> tekstu dokumentu", która znajduje się wewnątrz magazynu symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmSymbolFileBytesQuery

Ten interfejs API służy do pobierania nieprzetworzonych bajtów pliku symboli po stronie zdalnej.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 Update 3 Micro Update (DkmApiVersion.VS14Update3MicroUpdate).

IDkmSymbolFunctionResolver

Ten interfejs jest implementowany przez ewaluatory wyrażeń opartych na symbolach w celu mapowania między wyrażeniem funkcji/adresu i instrukcjami, które są reprezentowane przez nią. Służy to do wiązania punktów przerwania funkcji.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SymbolProviderId.

IDkmSymbolHiddenAttributeQuery

Ten interfejs API służy do odczytywania informacji o symbolu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

IDkmSymbolLocator

Interfejs implementowany przez dostawców symboli, którzy zajmują się wyszukiwaniem symboli. Innymi słowy, ten interfejs nie byłby implementowany przez dostawców symboli, którzy zajmują się tylko formatami symboli, które znajdują się wewnątrz debugowanego pliku binarnego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId, TransportKind.

IDkmSymbolLocator174

Interfejs implementowany przez dostawców symboli, którzy zajmują się wyszukiwaniem symboli. Innymi słowy, ten interfejs nie byłby implementowany przez dostawców symboli, którzy zajmują się tylko formatami symboli, które znajdują się wewnątrz debugowanego pliku binarnego.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

IDkmSymbolLocatorCallback170

Udostępnia wywołania zwrotne do lokalizatora symboli po stronie serwera.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

IDkmSymbolLocatorCallback177

Udostępnia wywołania zwrotne do lokalizatora symboli po stronie serwera.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

IDkmSymbolMemoryReader

Interfejs implementowany przez podstawowe monitory debugowania, które odczytują symbole z pamięci debuggee w czasie wykonywania. Ten interfejs zostanie zaimplementowany przez podstawowe monitory debugowania w celu obsługi formatów symboli, które są generowane lub ładowane w czasie wykonywania w pamięci debuggee.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

IDkmSymbolPathChangeNotification

Interfejs do aktualizowania składników po zmianie ustawień symboli.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

IDkmSymbolProviderCallback

Interfejs wywołania zwrotnego implementowany przez dostawców symboli w celu dostarczania informacji z magazynu symboli do monitorów debugowania.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmSymbolQuery

Ten interfejs API służy do odczytywania informacji o symbolu.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: SymbolProviderId.

IDkmSymbolQueryCallback

Umożliwia składnikom zdalnym uzyskiwanie informacji o położeniu źródła, gdy dostawca symboli znajduje się na maszynie programu VS.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Można użyć następujących właściwości: RuntimeId, SymbolProviderId.

IDkmSymbolStackWalk

Zapewnia mechanizm chodzenia ramek stosu natywnego przy użyciu informacji z plików symboli. Ten mechanizm służy do chodzenia wszelkich ramek stosu, których nie można rozpoznać na komputerze docelowym.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, SymbolProviderId.

IDkmTaskProvider

Interfejs implementowany przez składnik dostawcy zadań w celu uzyskania informacji o zadaniach. Ten interfejs może ulec zmianie w przyszłych wersjach programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TaskProviderId.

IDkmTaskProvider165

Interfejs implementowany przez składnik dostawcy zadań w celu uzyskania informacji o zadaniach asynchronicznie. Ten interfejs może ulec zmianie w przyszłych wersjach programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: EngineId, RuntimeId, SourceId, TaskProviderId.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

IDkmTaskProviderCreateNotification

IDkmTaskProviderCreateNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia TaskProviderUtwórz zdarzenie. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Wskazuje, że obiekt dostawcy zadań został utworzony.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TaskProviderId.

IDkmTaskProviderInitialize

Opcjonalny interfejs implementowany przez dostawców zadań w celu otrzymywania powiadomienia, gdy dostawcy zadań są najpierw proszeni o określony proces. Ten interfejs może ulec zmianie w przyszłych wersjach programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmTaskSynchronizationObjectProvider

Interfejs implementowany przez składniki dostawcy zadań w celu zapewnienia zestawu obiektów synchronizacji należących do zadania. Ten interfejs może ulec zmianie w przyszłych wersjach programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TaskProviderId.

IDkmTerminalLauncher

Interfejs wywołania zwrotnego, który służy do uruchamiania nowego terminalu (konsoli), do którego zostanie uruchomiony proces docelowy.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składników. Mogą być używane następujące właściwości: TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9).

IDkmThreadContextOperation

Operacje udostępniane przez podstawowy monitor debugowania w celu uzyskania i zaktualizowania kontekstu wątku (wartości rejestru).

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmThreadCreateNotification

IDkmThreadCreateNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ThreadCreate. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. ThreadCreate jest wyzwalany po uruchomieniu nowego wątku w procesie docelowym.

WątkuTworzenie zdarzeń można pominąć. W takim przypadku wątek będzie niewidoczny dla składników powyżej poziomu, na którym wątk został pominięty.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmThreadCurrentWinRtExceptionQuery

Ten interfejs jest implementowany przez monitory debugowania środowiska uruchomieniowego w celu zwrócenia najnowszych informacji o wyjątku WinRT w danym wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmThreadDisplayPropertiesQuery

Służy do określania kategorii wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmThreadExitNotification

IDkmThreadExitNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ThreadExit. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Element ThreadExit jest wyzwalany, gdy wątek w procesie docelowym kończy działanie. Nie zostanie wyzwolony, jeśli proces docelowy zakończy się, gdy wątek jest nadal uruchomiony.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmThreadLocationProvider

Udostępnia lokalizację wątku, jak widać w oknie wątków lub na liście rozwijanej wątków na pasku narzędzi lokalizacji debugowania. Jest to implementowane przez składnik dostawcy stosu firmy Microsoft.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmThreadNameChangeNotification

IDkmThreadNameChangeNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia ThreadNameChange. Gdy to powiadomienie zostanie wyzwolone, proces docelowy zostanie zawieszony i można go zbadać. Funkcja ThreadNameChange jest uruchamiana po zmianie nazwy wątku w procesie docelowym. Obecnie jest to uruchamiane tylko wtedy, gdy zarządzany wątek zmienia nazwę.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmThreadNameQuery

Służy do określania nazwy wątku. Nie zwraca nazwy wyświetlanej wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind.

IDkmThreadStackRangeProvider

Zwraca bazę stosu i limit wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmThreadSuspension

Wywoływane w celu wstrzymania lub wznowienia wątku oraz uzyskania bieżącej liczby zawieszenia wątku.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmTimeTravellingMonitor

Ten interfejs jest implementowany przez monitory debugowania, które umożliwiają podróżowanie w czasie.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

IDkmTlsReadWrite

Zapewnia możliwość odczytu i zapisu z miejsc protokołu TLS Win32 w procesie docelowym.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmTraceSettingsNotification

Interfejs służą do aktualizowania składników po zmianie ustawień śledzenia.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

IDkmUserCodeDeterminer

Określa, czy ramka jest użytkownikiem lub nieużytkownikiem, gdy taka determinacja nie została wykonana podczas tworzenia ramki.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmVirtualMemoryAllocator

Zaimplementowane przez podstawowe monitory debugowania, aby umożliwić alokację/wolne od pamięci wirtualnej w procesie docelowym.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmVirtualThreadCreateNotification

Element IDkmVirtualThreadCreateNotification jest implementowany przez składniki, które chcą nasłuchiwać zdarzenia VirtualThreadCreate. Proces docelowy może być nadal uruchamiany podczas tego powiadomienia. Po wywołaniu elementu VirtualThreadCreate jest uruchamiane zdarzenie z powiadomieniem odbiorników o utworzeniu nowego elementu DkmVirtualThread.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 6 (DkmApiVersion.VS16Update6).

IDkmVisualizationDataCompiler

Opcjonalny interfejs do kompilowania danych wizualizacji obiektu z formularza czytelnego dla człowieka do obiektu DkmCompiledVisualizationData. Obecnie ten interfejs jest implementowany tylko przez język C++.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: CompilerVendorId, LanguageId.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmVisualStudioServices

Interfejs zaimplementowany przez usługę AD7AL jako bramę do usług udostępnianych przez resztę programu Visual Studio.

Implementacje tego interfejsu są zawsze wywoływane (nie jest obsługiwane filtrowanie). Aby zmniejszyć wpływ pamięci, zaleca się zaimplementowanie tego interfejsu w małej biblioteki DLL lub skonfigurowanie implementacji za pomocą polecenia "CallOnlyWhenLoaded="true".

IDkmVisualStudioServices120

Interfejs zaimplementowany przez usługę AD7AL jako bramę do usług udostępnianych przez resztę programu Visual Studio.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

IDkmVolatileMemoryOperation

Zapewnia obsługę odczytu i zapisu pamięci. W przeciwieństwie do elementu IDkmMemoryOperation, ten interfejs może być używany podczas uruchamiania procesu i nigdy nie buforuje wyników, więc należy go używać z ostrożnością.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.

IDkmVolatileThreadProperties

Uwidacznia nietrwałe właściwości wątku, takie jak maska priorytetu i koligacji. Oczekuje się, że te wartości zmienią się w czasie i nie powinny być buforowane przez osoby wywołujące.

Implementacje tego interfejsu mogą ograniczać, gdy są wywoływane przy użyciu filtru zdefiniowanego w konfiguracji składnika. Mogą być używane następujące właściwości: BaseDebugMonitorId, EngineId, TransportKind.