Microsoft.VisualStudio.Debugger.ComponentInterfaces Namespace
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Schnittstellen
IDkmActiveScriptDebugMonitor |
Schnittstelle, die vom Skript-DM implementiert wird, um direkten Zugriff auf die Zielskriptlaufzeit zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmAfterSetNextStatementNotification |
IDkmAfterSetNextStatementNotification wird von Komponenten implementiert, die Benachrichtigungen erhalten möchten, nachdem eine festgelegte nächste Anweisung abgeschlossen wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmAppDomainCreatedNotification |
IDkmAppDomainCreatedNotification wird von Komponenten implementiert, die auf das AppDomainCreated-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. AppDomainCreated wird ausgelöst, wenn eine AppDomain vom Zielprozess erstellt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmAppDomainUnloadedNotification |
IDkmAppDomainUnloadedNotification wird von Komponenten implementiert, die auf das AppDomainUnloaded-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. AppDomainUnloaded wird ausgelöst, wenn eine AppDomain vom Zielprozess entladen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmAppPackageInfo |
Schnittstelle zum Auflisten von App-Paketinformationen auf dem lokalen oder Remotesystem. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: TransportKind. |
IDkmAsyncBreak |
Diese Schnittstelle enthält die API zum Ausführen eines asynchronen Umbruchs im Debuggeeprozess. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmAsyncBreakCompleteNotification |
IDkmAsyncBreakCompleteNotification wird von Komponenten implementiert, die auf das AsyncBreakComplete-Ereignis lauschen möchten. IDkmAsyncBreakCompleteNotification wird nach allen Implementierungen von IDkmAsyncBreakCompleteReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Wird von einem Debugmonitor gesendet, nachdem eine Anforderung zum Asynchronisieren des Prozesses abgeschlossen wurde. AsyncBreakComplete-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmAsyncBreakCompleteReceived |
IDkmAsyncBreakCompleteReceived wird von Komponenten implementiert, die auf das AsyncBreakComplete-Ereignis lauschen möchten. IDkmAsyncBreakCompleteReceived wird vor IDkmAsyncBreakCompleteNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Wird von einem Debugmonitor gesendet, nachdem eine Anforderung zum Asynchronisieren des Prozesses abgeschlossen wurde. AsyncBreakComplete-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmAsyncStateMachineDecoder170 |
Stellt Informationen auf Metadatenebene zu asynchronen Zustandscomputermethoden bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 17 RTM (DkmApiVersion.VS17RTM) eingeführt. |
IDkmAsyncTaskDecoder |
Führen Sie asynchrone Aufruflisten und Aufgabenerstellungsstapel durch. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId, SymbolProviderId, TaskProviderId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmBaseFuncEvalService |
Schnittstelle, die von Basisdebugmonitoren implementiert wird, um das Fortsetzen des Prozesses für eine Funktionsauswertung zu ermöglichen. Diese Schnittstelle enthält die grundlegenden Dienste, die von "ExecuteFuncEval" verwendet werden. Setup, Bereinigung, Timeoutbehandlung, Ausnahmebehandlung und Vervollständigungserkennung werden von den Debugmonitoren auf höherer Ebene verarbeitet. Diese Schnittstelle wird nicht für das Debuggen von CLR v2 bereitgestellt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmBaseNativeExecutionController |
IDkmBaseNativeExecutionController wird von Basisdebugmonitoren implementiert, die das Festlegen nativer Haltepunkte oder einzelner Schritte über native Anweisungen unterstützen. Es stellt die erweiterten Ausführungssteuerungsgrundsätze bereit, die für das CLR-Debuggen erforderlich sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmBeforeContinueExecutionNotification |
Stellt eine Benachrichtigung bereit, dass der Prozess die Ausführung fortsetzen wird. Diese Funktion wird aufgerufen, bevor relevante Stepper initialisiert werden, sodass func-evals ausgeführt werden können. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmBeforeStopDebuggingNotification |
Stellt eine Benachrichtigung bereit, dass der Prozess getrennt oder beendet werden soll. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmBinaryLoadedNotification |
IDkmBinaryLoadedNotification wird von Komponenten implementiert, die auf das BinaryLoaded-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Gibt an, dass wir die Binärdatei eines Moduls erfolgreich in den Minidump geladen haben, den wir debuggen. BinaryLoaded-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmBinaryLocator |
Diese Schnittstelle enthält Vom Symbolanbieter implementierte Methoden, mit denen Debugmonitore nach Binärdateien auf Symbolservern und lokalen Datenträgern suchen können. Dies ist erforderlich, da die Symbolserver-APIs nicht threadsicher sind und der Symbolanbieter zugriff darauf besitzt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmBinaryLocator11a |
Erweitert die Funktionalität des binären Locators. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1) eingeführt. |
IDkmBinaryReloadOpportunityNotification |
IDkmBinaryReloadOpportunityNotification wird von Komponenten implementiert, die auf das BinaryReloadOpportunity-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Beim Minidumpdebuggen wird von MinidumpBDM ausgelöst, um Binärdatei zu verschieben, wenn der Benutzer versucht, die Binärdatei manuell zu laden. BinaryReloadOpportunity-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2) eingeführt. |
IDkmBoundBreakpointHitNotification |
IDkmBoundBreakpointHitNotification wird von Komponenten implementiert, die auf das BoundBreakpointHit-Ereignis lauschen möchten. IDkmBoundBreakpointHitNotification wird nach allen Implementierungen von IDkmBoundBreakpointHitReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Stellt eine Benachrichtigung bereit, dass ein gebundener Haltepunkt (DkmBoundBreakpoint) erreicht wurde. Gebundene Haltepunkte sind die Übergeordneten Breakpointobjekte. Die Benachrichtigung für die Haltepunkte auf niedriger Ebene (DkmRuntimeBreakpoint) wird über das RuntimeBreakpoint-Ereignis abgerufen. BoundBreakpointHit-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. |
IDkmBoundBreakpointHitReceived |
IDkmBoundBreakpointHitReceived wird von Komponenten implementiert, die auf das BoundBreakpointHit-Ereignis lauschen möchten. IDkmBoundBreakpointHitReceived wird vor IDkmBoundBreakpointHitNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein gebundener Haltepunkt (DkmBoundBreakpoint) erreicht wurde. Gebundene Haltepunkte sind die Übergeordneten Breakpointobjekte. Die Benachrichtigung für die Haltepunkte auf niedriger Ebene (DkmRuntimeBreakpoint) wird über das RuntimeBreakpoint-Ereignis abgerufen. BoundBreakpointHit-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. |
IDkmBreakpointConditionProcessor |
Auf dem Zielcomputer implementierte Schnittstelle, um die Auswertung von Haltepunktbedingungen und Trefferanzahlen zu verarbeiten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmBreakpointConditionProcessorClient |
Wird von Aufrufern von DkmRuntimeBreakpoint.SetCompiledConditionPending implementiert, um kompilierte Bedingungen bereitzustellen, wenn ein Haltepunkt erreicht wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmBreakpointConditionProcessorClient140 |
Wird von Aufrufern von DkmRuntimeBreakpoint.SetCompiledConditionPending implementiert, um kompilierte Bedingungen bereitzustellen, wenn ein Haltepunkt erreicht wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmBreakpointConditionProcessorGpuExtension |
Erweiterungsschnittstelle für GPU-Debugging, die auf dem Zielcomputer implementiert ist, um die Auswertung von Breakpointbedingungen zu verarbeiten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmBreakpointConditionThreadSelectorForGpu |
Schnittstelle, die auf dem Zielcomputer implementiert ist, um die Auswertung von Haltepunktbedingungen für alle beendeten Threads zu verarbeiten und den Thread auszuwählen, dessen Bedingung für gpu true ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1) eingeführt. |
IDkmBreakpointHitWithErrorNotification |
IDkmBreakpointHitWithErrorNotification wird von Komponenten implementiert, die auf das BreakpointHitWithError-Ereignis lauschen möchten. IDkmBreakpointHitWithErrorNotification wird nach allen Implementierungen von IDkmBreakpointHitWithErrorReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Stellt eine Benachrichtigung bereit, dass ein ausstehender Haltepunkt erreicht wurde, die Verarbeitung jedoch zu einem nicht wiederherstellbaren Fehler geführt hat. Der Prozess wird nun beendet, und der Haltepunkt befindet sich jetzt in einem Fehlerzustand und wird nicht erneut getroffen. BreakpointHitWithError-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmBreakpointHitWithErrorReceived |
IDkmBreakpointHitWithErrorReceived wird von Komponenten implementiert, die auf das BreakpointHitWithError-Ereignis lauschen möchten. IDkmBreakpointHitWithErrorReceived wird vor IDkmBreakpointHitWithErrorNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein ausstehender Haltepunkt erreicht wurde, die Verarbeitung jedoch zu einem nicht wiederherstellbaren Fehler geführt hat. Der Prozess wird nun beendet, und der Haltepunkt befindet sich jetzt in einem Fehlerzustand und wird nicht erneut getroffen. BreakpointHitWithError-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmBreakpointManager |
Diese Schnittstelle wird von der Breakpoint-Manager-Komponente implementiert, um die Standardbehandlung für Haltepunkte bereitzustellen. Andere Komponenten im System können diese Schnittstelle auch implementieren, um die Bedeutung von Haltepunkten für bestimmte Sprachen neu zuzuordnen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. |
IDkmBreakpointManagerFileUpdate |
Schnittstelle, die von Breakpoint-Managern implementiert wird, die Benachrichtigungen erhalten möchten, wenn Dateien in der IDE aktualisiert werden. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. |
IDkmBreakpointManagerNotification |
Diese Schnittstelle wird durch Komponenten implementiert, die dem Haltepunkt-Manager Haltepunkte hinzufügen (z. B. AD7 AL). Dadurch kann eine Komponente benachrichtigt werden, wenn der Haltepunkt-Manager einen Haltepunkt bindet oder einen Haltepunktfehler oder eine Warnung erkennt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. |
IDkmBreakpointManagerNotification174 |
Diese Schnittstelle wird durch Komponenten implementiert, die dem Haltepunkt-Manager Haltepunkte hinzufügen (z. B. AD7 AL). Dadurch kann eine Komponente benachrichtigt werden, wenn der Haltepunkt-Manager einen Haltepunkt bindet oder einen Haltepunktfehler oder eine Warnung erkennt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. Diese API wurde in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) eingeführt. |
IDkmBreakpointManagerNotification176 |
Diese Schnittstelle wird durch Komponenten implementiert, die dem Haltepunkt-Manager Haltepunkte hinzufügen (z. B. AD7 AL). Dadurch kann eine Komponente benachrichtigt werden, wenn der Haltepunkt-Manager einen Haltepunkt bindet oder einen Haltepunktfehler oder eine Warnung erkennt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt. |
IDkmCallStackFilter |
Ermöglicht einer Komponente, dem Aufrufstapel zusätzliche Anmerkungen hinzuzufügen oder physische Frames aus dem Aufrufstapel zu entfernen. Aus Leistungsgründen werden Stapelrahmenfilter vor der Auswertung durch Ausdrucksauswerter aufgerufen. Ein Beispiel für einen Stapelrahmenfilter ist das Ausblenden von externem Code im Aufrufstapel. Framefilter, die asynchrone Stapellaufkontexte hinzufügen, müssen eine Priorität von Normal oder höher haben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TaskProviderId. |
IDkmClrAppDomainNameChanged |
Schnittstelle zum Aktualisieren des Namens der AppDomain. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. |
IDkmClrCustomVisualizerObjectProvider |
Instanziiert den debuggee-side Custom Visualizer-Typ im Debuggee und stellt Methoden zum Zugreifen auf das visualisierte Objekt ('Visualizer-Objekt') bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrCustomVisualizerObjectProvider1610 |
Instanziiert den debuggeeseitigen benutzerdefinierten Visualizer-Typ im Debuggee und stellt Methoden zum Zugreifen auf das visualisierte Objekt ('Visualizer-Objekt') bereit, wobei berücksichtigt wird, dass der BinaryFormatter möglicherweise nicht für die Kommunikation mit diesem unterstützt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10) eingeführt. |
IDkmClrDebugMonitorExceptionCaughtNotification |
IDkmClrDebugMonitorExceptionCaughtNotification wird von Komponenten implementiert, die auf das ClrDebugMonitorExceptionCaught-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Das Ereignis "ClrDebugMonitorExceptionCaught" stellt eine Benachrichtigung vom Managed Debug Monitor über eine abgefangene Ausnahme bereit, die innerhalb des Zielprozesses aufgetreten ist. Dieses Ereignis wird von Diagnosetools wie IntelliTrace genutzt, um in ihrer TraceDebugger.\n protokolliert zu werden. ClrDebugMonitorExceptionCaught-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmClrDecompiler |
Stellt Dekompilierungsdienste für CLR-Typen bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) eingeführt. |
IDkmClrDecompiler173 |
Stellt Dekompilierungsdienste für CLR-Typen bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) eingeführt. |
IDkmClrDecompiler175 |
Stellt Dekompilierungsdienste für CLR-Module bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) eingeführt. |
IDkmClrDecompiler177 |
Stellt Dekompilierungsdienste für CLR-Module bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmClrExceptionDetailsProvider |
Mit dieser Schnittstelle können Debugmonitore zusätzliche Informationen zu CLR-Ausnahmen in Form von Ausnahmedetails bereitstellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, ExceptionCategory, RuntimeId. Diese API wurde in Visual Studio 15 Update 7 (DkmApiVersion.VS15Update7) eingeführt. |
IDkmClrExpressionCompiler |
Ermöglicht Compilern für verwaltete Sprachen das Kompilieren von Ausdrücken zur Verwendung durch den Debugger zur Unterstützung der Ausdrucksauswertung und bedingter Haltepunkte. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrExpressionCompilerCallback |
Ermöglicht Compilern für verwaltete Sprachen das Kompilieren von Ausdrücken zur Verwendung durch den Debugger zur Unterstützung der Ausdrucksauswertung. Diese Schnittstelle enthält Methoden, die vom Monitor aufgerufen werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrExpressionEvaluatorCallbackInternal |
Interne Methoden, die vom CLR-Ausdrucksauswerter für die Kommunikation zwischen dem Monitor/der IDE verwendet werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrFormatter |
Formatiert Werte und Typnamen von Auswertungsergebnissen in Zeichenfolgen, die für die zu debuggende Sprache geeignet sind. Compilerhersteller können diese Schnittstelle implementieren, um die Wertformatierung für ihre Sprache anzupassen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrFormatter2 |
Formatiert Werte der Auswertungsergebnisse in eine Zeichenfolge, die für die zu debuggende Sprache geeignet ist. Compilerhersteller können diese Schnittstelle implementieren, um die Wertformatierung für ihre Sprache anzupassen. Diese Schnittstelle ist eine Ergänzung zur IDkmClrFormatter-Schnittstelle. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmClrFrameGenericParameterProvider |
Bietet die Möglichkeit, die generischen Parameter für einen Stapelrahmen abzurufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrFrameTypesProvider |
Wird intern verwendet, um Typinformationen zu einem Stapelrahmen für Null-Verweisausnahmeinformationen abzufragen. Diese Schnittstelle kann sich in zukünftigen Versionen von Visual Studio ändern. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmClrFullNameProvider |
Stellt vollständige Namen für bestimmte Ausdrücke bereit. Vollständige Namen werden für das Feature Zur Überwachung hinzufügen verwendet. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmClrFullNameProvider2 |
Stellt sprachspezifische Namen für Metadatenbezeichner bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId. Diese API wurde in Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10) eingeführt. |
IDkmClrInspectionQueryProcessor |
Ermöglicht die Ausführung von Abfragen, die in Managed IL kompiliert wurden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrIntrinsicAssemblyProvider |
Enthält die Methode zum Laden der assembly intrinsischen Methoden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrManagedHeapStringProvider |
Vom CLR-Inspektor implementierte Schnittstelle, um Zeichenfolgen effizient auszuwerten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) eingeführt. |
IDkmClrManagedHeapTypeLayoutProvider |
Schnittstelle, die vom CLR-Inspektor implementiert wird, um Typlayoutinformationen bereitzustellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt. |
IDkmClrMetaDataLoader |
Methoden zum Laden von Metadaten für Module, die nicht im Debugvorgang geladen werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrMetaDataProvider |
Schnittstelle, die vom verwalteten DM implementiert wird, um die Metadaten aus einem bestimmten Modul abzurufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmClrMetaDataProvider140 |
Methoden für den Zugriff auf Metadaten hinzugefügt, die in VS14RTM hinzugefügt wurden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrMetaDataProvider150 |
Methoden für den Zugriff auf Basismetadaten (original) hinzugefügt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) eingeführt. |
IDkmClrMethodSignatureHelper |
Stellt eine Methode zum Abrufen des Signaturtokens für eine lokale Variablensignatur mit einem Methodentoken bereit. Wenn die Methode über EnC geändert wurde, gibt diese Methode das neueste Blobtoken zurück. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrModuleLookup |
Ruft DkmClrModuleInstance von einem ICorDebugModule ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmClrNcInstructionAddressResolver |
Schnittstelle zum Auflösen des Typ-Ref-Tokens in typ def und der zugeordneten Assembly. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmClrObjectFavoritesCacheCallback |
Stellt Ergebnisformatierer mit Objektfavoriteninformationen bereit, die auf der Remoteseite zwischengespeichert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt. |
IDkmClrPropertyInterpreter |
Methoden zum Auswerten der Eigenschaft für ICorDebugValueHandles. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmClrPropertyInterpreter151 |
Methoden zum Auswerten der Eigenschaft für ICorDebugValueHandles. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 Update 3 (DkmApiVersion.VS15Update3) eingeführt. |
IDkmClrResultProvider |
Stellt DkmEvaluationResults für DkmClrValues bereit. Compileranbieter können diese Schnittstelle implementieren, um die Art und Weise zu ändern, wie Werte erweitert und dem Benutzer angezeigt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmClrRuntimeDebugMonitor |
Vom verwalteten DM implementierte Schnittstelle zum Abrufen von Informationen zum aktuellen Laufzeitstatus des Prozesses. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmClrRuntimeDebugMonitor150 |
Vom verwalteten DM implementierte Schnittstelle zum Abrufen von Informationen zum aktuellen Laufzeitstatus des Prozesses. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) eingeführt. |
IDkmClrRuntimeDebugMonitorDirect |
Vom verwalteten DM implementierte Schnittstelle, um Ausdrucksauswertern und anderen Komponenten direkten Zugriff auf ICorDebug-Schnittstellen zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. |
IDkmClrSymbolCallback |
Mit dieser API kann ein Ausdrucksauswerter Informationen abrufen, die in einem CLR-PDB-Datei- oder CLR-Symbolspeicher für dynamische Module enthalten sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmClrSymbolCallback120 |
Erweiterung von IDkmClrSymbolCallback zur Unterstützung von ClrNc-Szenarien. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmClrSymbolCallback160 |
Verbesserungen des Symbolanbieterrückrufs für Visual Studio 2019 hinzugefügt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) eingeführt. |
IDkmClrSymbolSignatureCallback |
Stellt APIs für Ausdrucksauswerter bereit, um die Signatur lokaler Variablen und Konstanten abzurufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmClrSymUnmanagedReaderFactory |
Diese API stellt eine partielle Implementierung von ISymUnmanagedReader2 für ein CLR-Modul instance bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmClrTypeResolver |
Schnittstelle zum Auflösen von Typen aus Zeichenfolgen in Methoden-IDs oder Typ-IDs. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmClrTypeRuntimeInfoProvider |
Wird intern verwendet, um ICorDebugType- und Größeninformationen aus einem DkmClrType abzufragen. Diese Schnittstelle kann in zukünftigen Versionen von Visual Studio geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmClrTypeRuntimeInfoProvider178 |
Von der verwalteten DM implementierte Schnittstelle, um Typinformationen aus der CLR bereitzustellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8) eingeführt. |
IDkmClrUIVisualizerService |
Wird von Ausdrucksauswertern implementiert, die die C#-EE-Methode von benutzerdefinierten Viewern unterstützen (d. h. IPropertyProxyEESide). Diese Schnittstelle kann in zukünftigen Versionen geändert werden. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. |
IDkmClrUIVisualizerService120 |
Wird von Ausdrucksauswertern implementiert, die die C#-EE-Methode von benutzerdefinierten Viewern unterstützen (d. h. IPropertyProxyEESide). Diese Schnittstelle kann in zukünftigen Versionen geändert werden. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmClrValueInspectionCallback |
Die Schnittstelle wurde implementiert, um die Überprüfung von CLR-Werten zu ermöglichen, die durch DkmClrValues dargestellt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmCompiledInspectionQueryProcessor |
Stellt die Ausführung kompilierter Überprüfungsabfragen bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompiledInspectionQueryKind, CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmComputeKernelExitNotification |
IDkmComputeKernelExitNotification wird von Komponenten implementiert, die auf das ComputeKernelExit-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Das Ereignis, wenn ein GPU-Computekerning abgeschlossen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmContinueExecution |
Diese Schnittstelle enthält die API zum Fortsetzen der Ausführung, nachdem die Engine ein Stoppereignis an das Visual Studio-Debuggerpaket gesendet hat. Diese Schnittstelle sollte nur von Komponenten des Basisdebugmonitors implementiert werden. Im Gegensatz zu fast allen anderen Schnittstellen kann eine Implementierung dieser Schnittstelle nicht mit einer anderen Implementierung verkettet werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmCustomMessageAsyncForwardReceiver176 |
Wird von Komponenten implementiert, die benutzerdefinierte Nachrichten von der IDE oder einer anderen Concord-Komponente empfangen und diese Nachricht asynchron verarbeiten möchten. Dies ist die asynchrone Version von IDkmCustomMessageForwardReceiver. Beachten Sie, dass nur Nachrichten, die mit der asynchronen (DkmWorkList)-Version von DkmCustomMessage.SendLower gesendet werden, über diese Schnittstelle empfangen werden. Implementierer dieser Schnittstelle verwenden in der Regel einen SourceId-Filter. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId, TransportKind. Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt. |
IDkmCustomMessageCallbackReceiver |
Wird von Komponenten implementiert, die benutzerdefinierte Nachrichten von einer anderen Concord-Komponente empfangen möchten. Diese Schnittstelle ähnelt IDkmCustomMessageForwardReceiver, mit der Ausnahme, dass diese Methode erfordert, dass sich der Aufrufer auf einer niedrigeren Ebene in der Komponentenhierarchie befindet als die Komponente, die die Benachrichtigung empfängt (z. B. Base Debug Monitor -> AD7 AL). Implementierer dieser Schnittstelle verwenden in der Regel einen SourceId-Filter. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId, TransportKind. |
IDkmCustomMessageForwardReceiver |
Wird von Komponenten implementiert, die benutzerdefinierte Nachrichten von der IDE oder einer anderen Concord-Komponente empfangen möchten. Dies ist eine Schnittstelle, die IDkmCustomMessageCallbackReceiver ähnelt, mit der Ausnahme, dass diese Methode erfordert, dass sich der Aufrufer auf einer höheren Ebene in der Komponentenhierarchie befindet als die Komponente, die den empfängt (z. B. AD7 AL -> Base Debug Monitor). Implementierer dieser Schnittstelle verwenden in der Regel einen SourceId-Filter. Ab Version 17.6 gibt es eine asynchrone Alternative zu dieser Schnittstelle: IDkmCustomMessageAsyncForwardReceiver176. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId, TransportKind. |
IDkmCustomStopNotification |
IDkmCustomStopNotification wird von Komponenten implementiert, die auf das CustomStop-Ereignis lauschen möchten. IDkmCustomStopNotification wird nach allen Implementierungen von IDkmCustomStopReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Das CustomStop-Ereignis ermöglicht es einer Concord-Komponente, ein Stoppereignis für eine benutzerdefinierte Ui-Komponente oder eine Concord-Komponente höherer Ebene auszulösen. CustomStop-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId, TransportKind. |
IDkmCustomStopReceived |
IDkmCustomStopReceived wird von Komponenten implementiert, die auf das CustomStop-Ereignis lauschen möchten. IDkmCustomStopReceived wird vor IDkmCustomStopNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Das CustomStop-Ereignis ermöglicht es einer Concord-Komponente, ein beendende Ereignis auf eine benutzerdefinierte Ui-Komponente oder auf eine Concord-Komponente höherer Ebene auszulösen. CustomStop-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId, TransportKind. |
IDkmCustomVisualizer |
Diese Schnittstelle wird von benutzerdefinierten Ausdrucksauswertungsvisualisierern implementiert, um die Ansicht eines Ausdrucks programmgesteuert anzupassen. Dies geschieht normalerweise, um Visualisierungen zu unterstützen, die mit der nativen Visualisierungssyntax nicht möglich sind, oder um die Visualisierung ohne vollständige symbolische Informationen zu aktivieren. Die Schnellansicht kann die vollständige Kontrolle über den Ausdruck übernehmen, einschließlich der Erweiterung untergeordneter Elemente, oder sie kann den Standardausdruck aus der Ausdrucksauswertung abrufen, ihn geringfügig ändern, aber andere Vorgänge wie die Erweiterung zurück in die EE zurückstellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId, SourceId, SymbolProviderId, VisualizerId. |
IDkmCustomVisualizerCallback |
Diese Schnittstelle ist der Ausdrucksauswerter implementiert, um einem EE-Addin das Rückrufen an die Ausdrucksauswertung zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId, SourceId, SymbolProviderId, VisualizerId. |
IDkmDataBreakpointErrorInfoClient |
Die Schnittstelle für Datenhaltepunkte schlägt fehl, nachdem sie gebunden wurden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmDataBreakpointHitNotification |
IDkmDataBreakpointHitNotification wird von Komponenten implementiert, die auf das DataBreakpointHit-Ereignis lauschen möchten. IDkmDataBreakpointHitNotification wird nach allen Implementierungen von IDkmDataBreakpointHitReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Stellt eine Benachrichtigung bereit, dass ein ausstehender Haltepunkt erreicht wurde, mit zusätzlichen Datenhaltepunktinformationen. Der Prozess wird nun mit zusätzlichen Informationen beendet. DataBreakpointHit-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmDataBreakpointHitReceived |
IDkmDataBreakpointHitReceived wird von Komponenten implementiert, die auf das DataBreakpointHit-Ereignis lauschen möchten. IDkmDataBreakpointHitReceived wird vor IDkmDataBreakpointHitNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein ausstehender Haltepunkt erreicht wurde, mit zusätzlichen Datenhaltepunktinformationen. Der Prozess wird nun mit zusätzlichen Informationen beendet. DataBreakpointHit-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmDataBreakpointInfoProvider |
Schnittstelle, die für die Bereitstellung von Informationen verantwortlich ist, die für einen Datenhaltepunkt relevant sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmDataBreakpointInfoProvider160 |
Erweiterung zu IDkmDataBreakpointInfoProvider, damit Ausdrucksauswerter einen Anzeigenamen für Daten breakpoints bereitstellen können. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmDebugMonitorExceptionNotification |
IDkmDebugMonitorExceptionNotification wird von Komponenten implementiert, die auf das DebugMonitorException-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Das Ereignis "DebugMonitorException" stellt Benachrichtigungen von Debugmonitoren über Ausnahmen bereit, die innerhalb des Zielprozesses auftreten. Diese Ereignisbenachrichtigung wird vom Ausnahme-Manager und von Debugmonitoren verwendet, die auf Komponentenebenen über dem Debugmonitor arbeiten, der die Ausnahme erkannt hat. Komponenten auf höherer Ebene sollten stattdessen Ausnahmetrigger verwenden. Weitere Informationen finden Sie unter DkmExceptionTrigger. Wenn die Ausnahme unbehandelt gesendet wird (DkmExceptionProcessingStage.Unhandled ist festgelegt), wird die IDE beendet. Andere Ausnahmen können abhängig von allen DkmExceptionTriggern, die von der AD7 AL oder anderen Komponenten festgelegt werden, beendet werden. Die AD7 AL liest den Standardsatz von Triggern aus %VSRegistryRoot%\AD7Metrics\Exception%CategoryGuid%*. DebugMonitorException-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. |
IDkmDeploymentCommandCallback |
Rückrufschnittstelle, die von Aufrufern von DkmDeploymentCommand.Start implementiert wird, um Benachrichtigungen über Ereignisse im Bereitstellungsbefehl zu erhalten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SourceId, TransportKind. |
IDkmDisassemblyFunctionLabelProvider |
Stellt Symbole bereit, die für die Formatierungs disassembliert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3) eingeführt. |
IDkmDisassemblyProvider |
Wird verwendet, um Anweisungen im Debug-Adressraum zu disassemblieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmDisassemblyRuntimeAddressResolver |
Ermöglicht einer Runtime das Angeben einer Adresse für die Symbolnamenauflösung zur Verwendung im Disassemblierungsfenster. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 16 Update 7 (DkmApiVersion.VS16Update7) eingeführt. |
IDkmDisassemblySymbolProvider |
Stellt Symbole bereit, die für die Formatierungs disassembliert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmDumpWriter |
Diese Schnittstelle enthält die API zum Schreiben einer Dumpdatei des Debugvorgangs. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmEditAndContinueService |
Schnittstelle, die von der Bearbeitungs- und Weiter-Engine implementiert wird, um status Abfragedienst zu unterstützen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmEmbeddedBreakpointHitNotification |
IDkmEmbeddedBreakpointHitNotification wird von Komponenten implementiert, die auf das EmbeddedBreakpointHit-Ereignis lauschen möchten. IDkmEmbeddedBreakpointHitNotification wird nach allen Implementierungen von IDkmEmbeddedBreakpointHitReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Wird vom Ausnahme-Manager gesendet, wenn eine eingebettete Breakpoint-Ausnahme gefunden wird. Komponenten unter dem Ausnahme-Manager müssen stattdessen auf das plattformspezifische Ausnahmeereignis lauschen. EmbeddedBreakpointHit-Ereignisse können unterdrückt werden. Wenn dieses Ereignis die AD7-Ebene erreicht, wechselt der Debugger in den Unterbrechungsmodus. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmEmbeddedBreakpointHitReceived |
IDkmEmbeddedBreakpointHitReceived wird von Komponenten implementiert, die auf das EmbeddedBreakpointHit-Ereignis lauschen möchten. IDkmEmbeddedBreakpointHitReceived wird vor IDkmEmbeddedBreakpointHitNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Wird vom Ausnahme-Manager gesendet, wenn eine eingebettete Breakpoint-Ausnahme gefunden wird. Komponenten unter dem Ausnahme-Manager müssen stattdessen auf das plattformspezifische Ausnahmeereignis lauschen. EmbeddedBreakpointHit-Ereignisse können unterdrückt werden. Wenn dieses Ereignis die AD7-Ebene erreicht, wechselt der Debugger in den Unterbrechungsmodus. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmEmbeddedDocumentProvider |
Diese API wird verwendet, um Quellcodedokumente abzurufen, die in eine Symboldatei eingebettet sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) eingeführt. |
IDkmEmbeddedDocumentProvider158 |
Diese API wird in vsdbg-Szenarien verwendet, um zu bestimmen, ob sich eine bestimmte Anweisung in einem eingebetteten Dokument befindet, ohne den Inhalt des Dokuments abzurufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmEmbeddedDocumentProvider165 |
Diese API wird verwendet, um das Vorhandensein eingebetteter Dokumente zu überprüfen, eingebettete Dokumente aufzulisten und den Dokumentinhalt zu erhalten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId. Diese API wurde in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) eingeführt. |
IDkmEntryPointNotification |
IDkmEntryPointNotification wird von Komponenten implementiert, die auf das EntryPoint-Ereignis lauschen möchten. IDkmEntryPointNotification wird nach allen Implementierungen von IDkmEntryPointReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Wird vom Haltepunkt-Manager ausgelöst, wenn der Haltepunkt des Einstiegspunkts erreicht wurde. EntryPoint-Ereignisse können nicht unterdrückt werden. Implementieren Sie IDkmEntryPointQuery, um den Einstiegspunkt zu überschreiben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmEntryPointReceived |
IDkmEntryPointReceived wird von Komponenten implementiert, die auf das EntryPoint-Ereignis lauschen möchten. IDkmEntryPointReceived wird vor IDkmEntryPointNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Wird vom Haltepunkt-Manager ausgelöst, wenn der Haltepunkt des Einstiegspunkts erreicht wurde. EntryPoint-Ereignisse können nicht unterdrückt werden. Implementieren Sie IDkmEntryPointQuery, um den Einstiegspunkt zu überschreiben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmExceptionAnalyzer |
Schnittstelle, die es einer Concord-Komponente ermöglicht, eine Ausnahme zu analysieren und eine verbesserte Beschreibung des Problems zu erstellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId, SourceId. Diese API wurde in Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1) eingeführt. |
IDkmExceptionContinuedNotification |
IDkmExceptionContinuedNotification wird von Komponenten implementiert, die auf das ExceptionContinued-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ExceptionContinued wird von einem Debugmonitor gesendet, wenn die Ausführung im Zielprozess fortgesetzt wird und die angegebene Ausnahme nicht gelöscht wurde. Anders ausgedrückt: Der Zielprozess wird mit der Standardausnahmeverarbeitung fortgesetzt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. |
IDkmExceptionController |
IDkmExceptionController wird von Runtime-Debugmonitoren implementiert, die Ausnahmeereignisse auslösen (DkmExceptionInformation.OnDebugMonitorException()). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. |
IDkmExceptionDetailsProvider |
Mit dieser Schnittstelle können Debugmonitore zusätzliche Informationen zu Ausnahmen in Form von Ausnahmedetails bereitstellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, ExceptionCategory, RuntimeId. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmExceptionDetailsProvider164 |
Diese Schnittstelle ermöglicht erweiterte Abfragen zu einer Ausnahme, insbesondere zu dem ursprünglichen Aufrufstapel. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, ExceptionCategory, RuntimeId. Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt. |
IDkmExceptionDetailsProvider173 |
Schnittstelle zum Implementieren von DkmExceptionDetails.GetStackTraceInstructionAddresses. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, ExceptionCategory, RuntimeId. Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt. |
IDkmExceptionFormatter |
IDkmExceptionFormatter wird von Runtime-Debugmonitoren implementiert, die Ausnahmeereignisse auslösen. Im Gegensatz zu IDkmExceptionController gibt es in der Regel eine einzelne Implementierung von IDkmExceptionFormatter für jede Ausnahmekategorie. Während beispielsweise mehrere Basisdebugmonitorimplementierungen Win32-Ausnahmen erkennen können, muss es nur eine Formatierungsimplementierung geben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. |
IDkmExceptionManager |
Schnittstelle, die von der Ausnahme-Manager-Komponente implementiert wird, um die Aktivierung oder Deaktivierung von Ausnahmetriggern zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmExceptionManager140 |
Dies ist eine aktualisierte Version von IDkmExceptionManager, die für Visual Studio 14.0 hinzugefügt wurde, um Ausnahmetrigger aus dem Ausnahme-Manager zu entfernen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmExceptionStackTraceProvider |
Ermöglicht einer Bibliothek, die Ausnahmeobjekte implementiert, die eine erfasste Stapelablaufverfolgung verwalten, diese Stapelablaufverfolgung für den Debugger verfügbar zu machen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmExceptionTriggerHitNotification |
IDkmExceptionTriggerHitNotification wird von Komponenten implementiert, die auf das ExceptionTriggerHit-Ereignis lauschen möchten. IDkmExceptionTriggerHitNotification wird nach allen Implementierungen von IDkmExceptionTriggerHitReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Das 'ExceptionTriggerHit'-Ereignis stellt eine Benachrichtigung bereit, dass ein zuvor festgelegter DkmExceptionTrigger erfüllt wurde. ExceptionTriggerHit-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId, SourceId. |
IDkmExceptionTriggerHitReceived |
IDkmExceptionTriggerHitReceived wird von Komponenten implementiert, die auf das ExceptionTriggerHit-Ereignis lauschen möchten. IDkmExceptionTriggerHitReceived wird vor IDkmExceptionTriggerHitNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Das 'ExceptionTriggerHit'-Ereignis stellt eine Benachrichtigung bereit, dass ein zuvor festgelegter DkmExceptionTrigger erfüllt wurde. ExceptionTriggerHit-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId, SourceId. |
IDkmExceptionWinRTErrorExtractor |
IDkmExceptionWinRTErrorExtractor wird vom Ausnahme-Manager aufgerufen, um erweiterte WinRT-Fehlerinformationen aus einer JavaScript/CLR/C++/etc-Ausnahme zu extrahieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. |
IDkmExtendedRegisters |
Ruft die erweiterten Register aus dem Threadkontext ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmFrameExceptionInterceptProvider |
Diese Schnittstelle wird von Debugmonitoren implementiert, die Unterstützung für das Entladen von Ausnahmen für einen bestimmten Frame bieten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmFramePseudoLocalResultProvider |
Ermöglicht die Bereitstellung zusätzlicher Knoten in frame locals, die durch den Pseudoregisternamen identifizierbar sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmFuncEvalCompletedNotification |
IDkmFuncEvalCompletedNotification wird von Komponenten implementiert, die auf das FuncEvalCompleted-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Das FuncEvalCompleted-Ereignis wird gesendet, nachdem eine Funktionsauswertung abgeschlossen ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmFuncEvalStartingNotification |
IDkmFuncEvalStartingNotification wird von Komponenten implementiert, die auf das FuncEvalStarting-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Das FuncEvalStarting-Ereignis wird unmittelbar vor dem Start einer Funktionsauswertung gesendet. Im Fall des geschachtelten Unterbrechungszustands löst jede neue Funktionsauswertung ein weiteres FuncEvalStarting-Ereignis aus. In diesem Szenario wird das Ziel beendet, und ein Benutzer führt eine Auswertung aus dem unmittelbaren Fenster aus, wodurch ein FuncEvalStarting-Ereignis ausgelöst wird. Der Benutzer erreicht einen Haltepunkt in seiner ausgewerteten Funktion, der Benutzer führt eine zweite Auswertung von dort aus, die ein zweites FuncEvalStarting-Ereignis auslöst. Der Benutzer lässt beide Auswertungen abschließen, und dadurch werden zwei FuncEvalCompleted-Ereignisse ausgelöst. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmFunctionTableProvider |
Schnittstelle zum Bereitstellen des Zugriffs auf die Laufzeitfunktionstabelle eines Prozesses. Eine Standardimplementierung wird vom nativen Debugmonitor von Microsoft bereitgestellt, der Funktionstabellen in geladenen Win32-Modulen und dynamischen PData in Liveprozessen finden kann. Diese Schnittstelle kann von Basisdebugmonitoren implementiert werden, um laufzeitbasierten Funktionstabellenzugriff für Nicht-Live-Prozesse (z. B. Minidumps) bereitzustellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmGetExpensiveHashValue177 |
Stellt Methoden zum Berechnen und Zurückgeben des tatsächlichen Werts eines "teuren" Hashs bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmGPUBreakpointBehaviorQuery |
Schnittstelle zum Abfragen des GPU-Debughaltepunktverhaltens. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmGPUComputeKernelOperation |
Stellt die Compute-Kernelhierarchie bereit, d. h. die Threadgruppe, den Computevektor und den Computethread zur Anzeige durch den Benutzer. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmGPUDisassemblyQuery |
Wird verwendet, um rohe Disassemblierung im GPU-Debugbytecode abzufragen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmGPUEnvironmentFilter |
Optionale interne Schnittstelle, die implementiert werden kann, um die Umgebung des GPU-Zielprozesses anzupassen, bevor er gestartet wird. Aufseiten des Debugmonitors kann diese API oder IDkmGPUEnvironmentFilter implementiert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId. |
IDkmGPUMemoryOperation |
Wird von Basisdebugmonitoren implementiert, um Zugriff auf den Arbeitsspeicher des GPU-Zielprozesses zu ermöglichen. Basisdebugmonitore sind für die Ausführung der Speicher-E/A verantwortlich. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmGpuRaceHazardsAllowSameNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn "IsGpuRaceHazardsAllowSameSettingEnabled" aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmGPURegisterOperation |
Wird von Basisdebugmonitoren implementiert, um Zugriff auf die Register des GPU-Computethreads zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmGPUSetMemoryAccessWarningOperation |
IDkmGPUSetMemoryAccessWarningOperation wird verwendet, um GPU-Speicherzugriffswarnungen auf dem gedebuggten GPU-Gerät zu konfigurieren. Sie wird von Basisdebugmonitoren implementiert, die das Melden von GPU-Speicherzugriffsausnahmen unterstützen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmGPUSingleStepCompleteNotification |
IDkmGPUSingleStepCompleteNotification wird von Komponenten implementiert, die auf das GPUSingleStepComplete-Ereignis lauschen möchten. IDkmGPUSingleStepCompleteNotification wird nach allen Implementierungen von IDkmGPUSingleStepCompleteReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Wird gesendet, wenn das einzelne Schrittschritten eines GPU-Threads abgeschlossen ist. Das Ereignis kann von einem anderen Thread als dem Anforderungsthread in derselben Verzerrung ausgelöst werden. GPUSingleStepComplete-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId. |
IDkmGPUSingleStepCompleteReceived |
IDkmGPUSingleStepCompleteReceived wird von Komponenten implementiert, die auf das GPUSingleStepComplete-Ereignis lauschen möchten. IDkmGPUSingleStepCompleteReceived wird vor IDkmGPUSingleStepCompleteNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Wird gesendet, wenn das einzelne Schrittschritten eines GPU-Threads abgeschlossen ist. Das Ereignis kann von einem anderen Thread als dem Anforderungsthread in derselben Verzerrung ausgelöst werden. GPUSingleStepComplete-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId. |
IDkmGPUSymbolProviderCallback |
Rückrufschnittstelle, die von GPU-Symbolanbietern implementiert wird, um Informationen aus dem Symbolspeicher für Basisdebugmonitore bereitzustellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmGPUSymbolQuery |
Diese API wird verwendet, um Informationen zu einem Symbol für DPC++ zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. |
IDkmGPUSymbolQueryCallback |
Ermöglicht Remotekomponenten das Abrufen von Quellpositionsinformationen für DPC++, wenn sich der Symbolanbieter auf dem VS-Computer befindet. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. |
IDkmGPUTempBreakStepper |
Schnittstelle, die von GPU-Basisdebugmonitoren implementiert wird, um temporäre Anweisungshaltepunkte im Schrittmodus zu aktivieren. Die temporären Anweisungshaltepunkte werden an ContinueDebugEvent übergeben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId. |
IDkmGroupCompiledInspectionQueryProcessor |
Wird verwendet, um kompilierte Gruppenausdrucksverarbeitung auszuführen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompiledInspectionQueryKind, CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmGroupLanguageExpressionEvaluator |
Diese Schnittstelle ermöglicht eine Spracherweiterung, um Ausdrücke für eine Gruppe von Threads auszuwerten. Sie sollte im Allgemeinen von allen Spracherweiterungen implementiert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmHeuristicStackWalker |
IDkmHeuristicStackWalker wird vom Stapelanbieter aufgerufen. Es wird aufgerufen, wenn versucht wird, Frames ohne Symbole zu durchlaufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmHiddenEntryPointNotification |
IDkmHiddenEntryPointNotification wird von Komponenten implementiert, die auf das HiddenEntryPoint-Ereignis lauschen möchten. IDkmHiddenEntryPointNotification wird nach allen Implementierungen von IDkmHiddenEntryPointReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Wird vom Haltepunkt-Manager ausgelöst, wenn der Haltepunkt des Einstiegspunkts im ausgeblendeten Code erreicht wurde. Der tatsächliche EntryPoint wird verzögert, bis wir ausgeblendeten Code belassen, und wird möglicherweise nicht einmal ausgelöst, wenn wir keine geeignete Öffnung finden können. HiddenEntryPoint wird zusätzlich für alle erforderlichen Arbeiten im Hintergrund ausgelöst. HiddenEntryPoint-Ereignisse können nicht unterdrückt werden. Um den Einstiegspunkt zu überschreiben, implementieren Sie IDkmHiddenEntryPointQuery. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmHiddenEntryPointReceived |
IDkmHiddenEntryPointReceived wird von Komponenten implementiert, die auf das HiddenEntryPoint-Ereignis lauschen möchten. IDkmHiddenEntryPointReceived wird vor IDkmHiddenEntryPointNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Wird vom Haltepunkt-Manager ausgelöst, wenn der Haltepunkt des Einstiegspunkts im ausgeblendeten Code erreicht wurde. Der tatsächliche EntryPoint wird verzögert, bis wir ausgeblendeten Code behalten, und wird möglicherweise nicht einmal ausgelöst, wenn wir keine geeignete Öffnung finden können. HiddenEntryPoint wird zusätzlich für alle erforderlichen Arbeiten hinter den Kulissen ausgelöst. HiddenEntryPoint-Ereignisse können nicht unterdrückt werden. Um den Einstiegspunkt zu überschreiben, implementieren Sie IDkmHiddenEntryPointQuery. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmHostingProcessShowNotification |
Schnittstelle, die von Komponenten implementiert wird, die herausfinden möchten, wann das aktive (nicht ausgeblendete) Debuggen eines Hostingprozesses (z. B. my_app.vshost.exe) beginnt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmIISDebuggingServices |
Schnittstelle zum Bereitstellen von IIS-Debugfunktionen für das SDM. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: TransportKind. |
IDkmIISResolver |
Schnittstelle zum Bereitstellen der URL-Arbeitsprozessauflösung auf dem Visual Studio-Computer>. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: TransportKind. |
IDkmIISResolver160 |
Schnittstelle zum Bereitstellen der URL-Worker-Prozessauflösung> für Profilerstellungsszenarien. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: TransportKind. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) eingeführt. |
IDkmIISResolver170 |
Schnittstelle zum Bereitstellen von IIS-Anwendungspoolinformationen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: TransportKind. Diese API wurde in Visual Studio 17 RTM (DkmApiVersion.VS17RTM) eingeführt. |
IDkmILFailureReasonResolver |
Löst eine DkmILFailureReason in eine Fehlermeldung auf. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompiledInspectionQueryKind, CompilerVendorId, EngineId, LanguageId, RuntimeId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmILInterpreter |
Schnittstelle zum Interpretieren von IL. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmInlineFrameCount |
Diese API wird verwendet, um die Anzahl von Inlineframes an einer Position zu bestimmen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) eingeführt. |
IDkmInlineSourceSymbolQuery |
Diese API wird verwendet, um Inlinesymbolinformationen zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmInstructionAddressOperator |
Schnittstelle zum Bereitstellen laufzeitspezifischer Vorgänge für Anweisungsadressen. Für native und verwaltete Anweisungen wird dieser Dienst vom Symbolanbieter bereitgestellt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmInstructionAddressProvider |
Schnittstelle zum Bereitstellen prozessspezifischer Anweisungsadressen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmInstructionAddressResolver |
Schnittstelle zum Bereitstellen einer laufzeitspezifischen CPU-Adressauflösung. Dies kann entweder auf Server- oder Clientseite implementiert werden (z. B. native CLR-Kompilierung). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. |
IDkmInstructionPatchNotification |
Schnittstelle, die von Komponenten implementiert wird, die Benachrichtigungen erhalten möchten, wenn der Basisdebugmonitor einen Speicherschreibvorgang in den Anweisungsstream ausführt. Diese Schnittstelle kann nur im Überwachungsprozess implementiert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmInstructionStepper |
Schnittstelle, die von Basisdebugmonitoren implementiert wird, um Schrittgrundsätze auf Anweisungsebene bereitzustellen. Diese Schnittstelle wird von Laufzeitdebugmonitoren genutzt, um die Ausführungssteuerung auf Benutzerebene zu implementieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId. |
IDkmInterceptExceptionCompletedNotification |
IDkmInterceptExceptionCompletedNotification wird von Komponenten implementiert, die auf das InterceptExceptionCompleted-Ereignis lauschen möchten. IDkmInterceptExceptionCompletedNotification wird nach allen Implementierungen von IDkmInterceptExceptionCompletedReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und Implementierende können den Prozess entweder überprüfen oder kontrolliert ausführen lassen (Slip, Func-eval). Wird von einem Debugmonitor gesendet, nachdem eine Ausnahme für einen angegebenen Frame entwickelt wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmInterceptExceptionCompletedReceived |
IDkmInterceptExceptionCompletedReceived wird von Komponenten implementiert, die auf das InterceptExceptionCompleted-Ereignis lauschen möchten. IDkmInterceptExceptionCompletedReceived wird vor IDkmInterceptExceptionCompletedNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein Func-eval, kein Verrutschen). Wird von einem Debugmonitor gesendet, nachdem eine Ausnahme für einen angegebenen Frame entwickelt wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmIntrinsicFunctionEvaluator |
Mit dieser Schnittstelle kann ein Ausdrucksauswerter intrinsische Vorgänge angeben, die über IL aufgerufen werden sollen, für die die EE verantwortlich ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: LanguageId, SourceId. |
IDkmIntrinsicFunctionEvaluator140 |
Mit dieser Schnittstelle kann ein Ausdrucksauswerter intrinsische Vorgänge angeben, die über IL aufgerufen werden sollen, für die die EE verantwortlich ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: LanguageId, SourceId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmJustMyCodeEnableNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn JustMyCode aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmJustMyCodeProvider |
Schnittstelle, um zu bestimmen, ob ein bestimmter Speicherort Benutzercode ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmLanguageAsyncStepper |
Diese Schnittstelle wird von Sprachen implementiert, um das Schrittverhalten für asynchrone Methoden zu aktivieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageConditionEvaluator |
Diese Schnittstelle wird von Ausdrucksauswertern implementiert, die sich oder auf dem Zielcomputer befinden und bedingte Haltepunkte unterstützen möchten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageExpressionCompiler |
Diese Schnittstelle ermöglicht einer Spracherweiterung das Vorkompilieren von Breakpointbedingungen, sodass derselbe Ausdruck schnell ausgewertet werden kann, wenn der Haltepunkt erreicht wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageExpressionEvaluator |
Diese Schnittstelle ermöglicht eine Spracherweiterung, um Ausdrücke in den verschiedenen Datenüberprüfungsfenstern des Debuggers (watch, autos, sofort, Arbeitsspeicher, Disassemblierung usw.) auszuwerten. Es sollte im Allgemeinen von allen Spracherweiterungen implementiert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageFrameDecoder |
Mit dieser Schnittstelle kann eine Spracherweiterung die Anzeige von Funktionsnamen im Aufruflistenfenster formatieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageInstructionDecoder |
Mit dieser Schnittstelle kann eine Spracherweiterung die Anzeige der Spalte "Funktion" im Haltepunktfenster und an anderen Stellen formatieren, an denen versucht wird, eine Anweisungsadresse zu formatieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageObjectIdProvider |
Dies ist eine optionale Schnittstelle, die von Ausdrucksauswertern implementiert wird. Sie sollte von Ausdrucksauswertern implementiert werden, die Auswertungsergebnisse mit dem Flag "CanHaveObjectId" zurückgeben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId. |
IDkmLanguageReturnValueEvaluator |
Mit dieser Schnittstelle kann eine Spracherweiterung Rückgabewerte auswerten, die während des Schritts von einer Runtime erfasst werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLanguageReturnValueEvaluator2 |
Mit dieser Schnittstelle kann eine Spracherweiterung Rückgabewerte auswerten, die während des Schritts von einer Runtime erfasst werden. Dies ist ein Ersatz für IDkmLanguageReturnValueEvaluator, mit dem Komponenten Datenelemente abrufen können, die dem Rückgabewert zugeordnet sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, RuntimeId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmLanguageStepIntoFilterCallback |
Diese Schnittstelle ermöglicht es einer Spracherweiterung, das Step-Into Verhalten der nativen Runtime zu beeinflussen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId. |
IDkmLaunchResumeProcess |
IDkmLaunchResumeProcess wird verwendet, um einen Prozess zu starten und fortzusetzen. Sie wird vom Debugmonitor in F5 und vom Transport in STRG-F5 aufgerufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmLaunchResumeProcess150 |
Erweiterung zu IDkmLaunchResumeProcess, um das Übergeben des erstellten DkmProcess während des Fortsetzens zu unterstützen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 15 Update 3 (DkmApiVersion.VS15Update3) eingeführt. |
IDkmLoadCompleteNotification |
IDkmLoadCompleteNotification wird von Komponenten implementiert, die auf das LoadComplete-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. LoadComplete wird vom Basisdebugmonitor gesendet, wenn das Starten oder Anfügen an den Prozess abgeschlossen ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmManagedAsyncTaskDecoder |
Ruft Informationen zum Erstellen von Fortsetzungsrahmen einer verwalteten Aufgabe ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, SymbolProviderId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmManagedFuncEvalQuickAbortServices |
Schnittstelle zur Unterstützung eines verwalteten func-eval-Schnellabbruchs. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmManagedFuncEvalServices |
Vom verwalteten Debugmonitor bereitgestellte Schnittstelle, um den Prozess für eine verwaltete Funktionsauswertung fortzusetzen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmManagedFuncEvalServices150 |
Vom verwalteten Debugmonitor bereitgestellte Schnittstelle, um den Prozess für eine verwaltete Funktionsauswertung fortzusetzen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmManagedHeapPathsToRootProvider |
Schnittstelle, die von managed dm implementiert wird, um das Durchlaufen des verwalteten Heaps zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 2 (DkmApiVersion.VS17Update2) eingeführt. |
IDkmManagedHeapSampler |
Vom Sampler implementierte Schnittstelle zum Abrufen eines verwalteten Heaps mit Stichproben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmManagedHeapSampler174 |
Schnittstelle, die vom Heap-Sampler implementiert wird, um die Stammanalyse zurück zu verschieben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) eingeführt. |
IDkmManagedHeapSampler175 |
Schnittstelle, die vom Heap-Sampler implementiert wird, um doppelte Zeichenfolgen zu erkennen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) eingeführt. |
IDkmManagedHeapSampler176 |
Schnittstelle, die vom Heap-Sampler implementiert wird, um doppelte Zeichenfolgen zu erkennen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) eingeführt. |
IDkmManagedHeapSampler177 |
Schnittstelle, die vom verwalteten Heap-Sampler implementiert wird, um Segmente abzurufen und doppelte Zeichenfolgen zu analysieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmManagedHeapSampler178 |
Vom Heap-Sampler implementierte Schnittstelle, um Ereignishandlerlecks zu erkennen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8) eingeführt. |
IDkmManagedHeapWalker |
Schnittstelle, die von managed dm implementiert wird, um das Durchlaufen des verwalteten Heaps zu ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmManagedHeapWalker175 |
Schnittstelle, die vom verwalteten DM implementiert wird, um den Zeichenfolgentyp zu finden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) eingeführt. |
IDkmManagedHeapWalker177 |
Schnittstelle, die von der verwalteten DM implementiert wird, um das Durchlaufen des verwalteten Heaps zu ermöglichen. Macht Methoden im Zusammenhang mit der Nachverfolgung verwalteter Verweise auf native Objekte verfügbar. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmManagedReturnValueFetcher |
Ruft Verwaltete Rückgabewertinformationen von ManagedDM zur Auswertung ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmManagedSteppingCodePathProvider |
Wird von ManagedDM zum Abfragen von Codepfadinformationen verwendet. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmManagedTaskServices |
Stellt Dienste für Aufgabenanbieter und zum Debuggen von Monitoren zum Abrufen von Informationen zu verwalteten Aufgaben bereit. Dies wird von der Shim Managed EE implementiert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmManagedTaskServices158 |
Stellt Dienste für Aufgabenanbieter und Debugmonitore zum Abrufen von Informationen zu verwalteten Aufgaben bereit. Dies wird vom CLR-Inspektor implementiert. Diese Schnittstelle kann in zukünftigen Versionen geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmManagedThreadProperties |
Macht Eigenschaften eines verwalteten Threads verfügbar, z. B. verwaltete Thread-ID. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmMCppSymbolProvider |
Symbolanbieter für verwaltetes C++. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1) eingeführt. |
IDkmMemoryOperation |
Wird von Basisdebugmonitoren implementiert, um Zugriff auf den Arbeitsspeicher des Zielprozesses zu ermöglichen. Diese Schnittstelle wird auch von Komponenten auf höherer Ebene implementiert, um Speicherzwischenspeicherung bereitzustellen. Basisdebugmonitore sind dafür verantwortlich, die Speicher-E/A auszuführen, eine Tabelle mit unsichtbaren Schreibvorgängen zu verwalten und Ereignisse bereitzustellen, wenn die unsichtbare Schreibtabelle aktualisiert wird (über DkmProcess.OnInstructionPatchInserted/Removed). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmMergedMonitorStackWalk |
IDkmMergedMonitorStackWalk wird vom Stapelanbieter aufgerufen. Es wird zwischen den verschiedenen Implementierungen von IDkmMonitorStackWalk vermittelt, um Teile des Stapels zu durchlaufen, die innerhalb des Monitors gelaufen werden sollen (anstatt innerhalb der Engine zu gehen). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmMergedMonitorStackWalk164 |
IDkmMergedMonitorStackWalk164 wird vom Stapelanbieter aufgerufen. Es wird zwischen den verschiedenen Implementierungen von IDkmMonitorStackWalk vermittelt, um Teile des Stapels zu durchlaufen, die innerhalb des Monitors gelaufen werden sollen (anstatt innerhalb der Engine zu gehen). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt. |
IDkmMinidumpQuery |
Ruft Informationen zum zu debuggenden Minidump ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmMinidumpQuery1610 |
Ruft Informationen zum zu debuggenden Minidump ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 16 Update 10 (DkmApiVersion.VS16Update10) eingeführt. |
IDkmMinidumpThreadInfo |
Ruft threadzustandsinformationen ab, die im Minidump gespeichert sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 17 RTM (DkmApiVersion.VS17RTM) eingeführt. |
IDkmModuleCreateNotification |
IDkmModuleCreateNotification wird von Komponenten implementiert, die auf das ModuleCreate-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. ModuleCreate wird gesendet, wenn ein Symbolanbieter neue Symbole lädt und somit ein neues DkmModule-Modul erstellt wird. Ein DkmModule-Modul ist nur für Modulinstanzen mit Symbolen vorhanden. ModuleCreate-Ereignisse können unterdrückt werden. In diesem Fall ist das Modul für Komponenten über der Ebene, auf der das Modul unterdrückt wurde, nicht sichtbar. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. |
IDkmModuleInstanceDisabledNotification |
Schnittstelle, die von Debugmonitoren implementiert wird, um updates auszuführen, wenn die Eigenschaft "Disabled" eines Moduls geändert wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleInstanceLoadNotification |
IDkmModuleInstanceLoadNotification wird von Komponenten implementiert, die auf das ModuleInstanceLoad-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ModuleInstanceLoad wird ausgelöst, wenn ein Modul von einem Zielprozess geladen wird. Dieses Ereignis wird unter anderem für Symbolanbieter zum Laden von Symbolen und für den Haltepunkt-Manager zum Festlegen von Haltepunkten verwendet. ModuleInstanceLoad wird für alle Module ausgelöst, auch wenn keine Symbole geladen sind. ModuleInstanceLoad-Ereignisse können unterdrückt werden. In diesem Fall ist das Modul für Komponenten über der Ebene, auf der das Modul unterdrückt wurde, nicht sichtbar. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleInstanceUnloadNotification |
IDkmModuleInstanceUnloadNotification wird von Komponenten implementiert, die auf das ModuleInstanceUnload-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ModuleInstanceUnload wird gesendet, wenn der Monitor erkennt, dass ein Modul aus dem Zielprozess entladen wurde. ModuleInstanceUnload-Ereignisse können nicht unterdrückt werden. Wenn das ModuleLoad-Ereignis jedoch unterdrückt wurde, beendet ModuleUnload die Verarbeitung auf der Ebene, auf der ModuleLoad unterdrückt wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleLocator |
Von Debugmonitoren implementierte Schnittstelle, die Debugdumps unterstützen, damit die Benutzeroberfläche nach Binärdateien suchen kann, die beim ursprünglichen Laden des Speicherabbilds nicht gefunden wurden. Der Symbolpfad wird von der Benutzeroberfläche aktualisiert, wenn der Benutzer bei der Suche nach der Binärdatei einen Pfad auswäht. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleMetadataStatusQuery |
Bestimmt beim verwalteten Minidumpdebuggen, ob Metadaten für ein bestimmtes Modul instance verfügbar sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmModuleModifiedNotification |
Komponenten sollten diese Schnittstelle implementieren, um informiert zu werden, wenn sich ein Modul aufgrund von EnC oder dynamisch ausgegebenem Code ändert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmModuleSymbolSearchResult175 |
Ermöglicht das Abrufen von Symbolsuchergebnissen für ein Modul instance. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) eingeführt. |
IDkmModuleSymbolsLoaded |
Schnittstelle, die von Basisdebugmonitoren implementiert wird, um ein symbolgeladenes Ereignis auszulösen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleSymbolsLoadedNotification |
IDkmModuleSymbolsLoadedNotification wird von Komponenten implementiert, die auf das ModuleSymbolsLoaded-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ModuleSymbolsLoaded wird gesendet, nachdem Symbole für ein bestimmtes Modul instance geladen wurden. Dies wird entweder gesendet, wenn Symbole als DLL-/EXE-Ladevorgang im Zielprozess geladen werden, oder nachdem der Benutzer zum Erneutladen von Symbolen aufgefordert wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleSymbolsReload |
Ermöglicht das Ersetzen der Symboldatei, die einem DkmModule zugrunde liegt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) eingeführt. |
IDkmModuleSymbolsReload175 |
Ermöglicht das Ersetzen des einem DkmModule zugrunde liegenden ISymUnmanagedReader. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) eingeführt. |
IDkmModuleSymbolsReplacedNotification |
IDkmModuleSymbolsReplacedNotification wird von Komponenten implementiert, die auf das ModuleSymbolsReplaced-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. ModuleSymbolsReplaced wird ausgelöst, wenn die Symbole eines Moduls ersetzt wurden. In der Regel aufgrund von Vorgängen wie der Dekompilierung. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) eingeführt. |
IDkmModuleSymbolsUpdatedNotification |
IDkmModuleSymbolsUpdatedNotification wird von Komponenten implementiert, die auf das ModuleSymbolsUpdated-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ModuleSymbolsUpdated wird von einem Debugmonitor gesendet, wenn dynamischer Code im Zielprozess den Symbolstatus aktualisiert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmModuleUserCodeDeterminer |
Schnittstelle implementiert, um Just-My-Code-status für Module bereitzustellen. Um das Modulfenster zu unterstützen, sollte diese Schnittstelle in einer IDE-Komponente implementiert werden, kann aber auch auf der Monitorseite implementiert werden, wenn dies nützlich ist. Microsoft implementiert diese Schnittstelle auf der Monitorseite für verwalteten Code, aber nicht nativ. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmMonitorStackWalk |
Untersucht den Teil des Stapels, der aus einer bestimmten DkmRuntimeInstance stammt, und gibt Frames aus dieser Runtime zurück. IDkmMonitorStackWalk wird verwendet, um diese Wanderung auf dem Zielcomputer zu tun, und führt diesen Schritt in der Regel ohne Symbole aus. Es sollte beachtet werden, dass ein präziser Monitorstapellauf in der Regel folgendes erfordert: 1. Der Laufzeitmonitor, um die Aufrufkonvention der zugrunde liegenden Laufzeit vollständig zu verstehen, UND die Runtime verwendet einen Mechanismus, sodass kein Code von anderen Runtimes benötigt wird, die sich auf dem Stapel befinden, um gelaufen zu werden. Beispielsweise verwaltet die CLR Stapelbereiche, sodass die CLR weiterhin den verwalteten Code finden kann, wenn verwalteter Code in nativ aufgerufen wird, ohne dass der systemeigene Code durchlaufen werden muss. - oder - 2. Eine einheitliche Aufrufkonvention, der der gesamte Code folgen muss. Beispielsweise muss der gesamte Code einer einheitlichen Aufrufkonvention für x64- und IA-64-Versionen von Windows entsprechen. Microsoft stellt fünf Implementierungen von IDkmMonitorStackWalk bereit: 1. Eine Implementierung für ICorDebug v2 2. Eine Implementierung für ICorDebug v4 3. Eine Implementierung für x64/ia64 PDATA-Walking. 4. Eine Implementierung für ActiveScript. 5. Eine Standardimplementierung, die unbekannte Regionen bündelt, die im Engineprozess durchlaufen werden sollen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. |
IDkmNameUndecorator |
Diese API wird verwendet, um Symbolnamen zu entwerten. Microsoft bietet eine Implementierung davon, um Symbolnamen in PDBs zu verwerten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. |
IDkmNativeCppEditAndContinueNotification |
Schnittstelle, die von Komponenten implementiert wird, um native ENC-Benachrichtigungen zu lauschen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmNativeDebuggingEnableNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn das native Debuggen für einen bestimmten Prozess aktiviert oder deaktiviert ist. Beachten Sie, dass für Visual Studio 11 das native Debuggen nicht direkt aktiviert/deaktiviert werden kann, aber zukünftige Versionen können diese Funktionalität unterstützen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmNativeEditAndContinueUpdate |
Schnittstelle, die von der nativen Bearbeitungs- und Weiter-Engine implementiert wird, um ausstehende Codeänderungen, -validierung und -commit bereitzustellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmNativeEditAndContinueUpdate140A |
Schnittstelle, die von der nativen Bearbeitungs- und Weiter-Engine implementiert wird, um das Abbrechen zuzulassen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1) eingeführt. |
IDkmNativeExportsEnableNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn "IsNativeExportsEnabled" aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmNativeExportTableDecoder |
Ermöglicht die Decodierung von Exporttabellen in Windows PE-Dateien. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmNativeExportTableDecoder150 |
Stellt zusätzliche Decodierung von Exporttabellen in Windows PE-Dateien bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmNativeJustMyCodeProvider158 |
Schnittstelle, um zu bestimmen, ob ein bestimmter Speicherort Benutzercode ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmNativeJustMyCodeSteppingEnableNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn natives JustMyCode-Stepping aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmNativeStackCallback |
Stellt einen Mechanismus für den Basisdebugmonitor und den systemeigenen Debugmonitor bereit, um Informationen zu den Stapelframes abzurufen, die möglicherweise Symbolunterstützung erfordern. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmNativeSteppingCallSiteProvider |
Wird vom nativen IDkmSteppingCodePathDecoder-Implementierer aufgerufen, um native CodePaths aufzulisten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmNativeSymbolProviderCallback |
Rückrufschnittstelle, die vom PDB-Symbolanbieter implementiert wird, um Informationen zu Symbolen an den Basisdebugmonitor zurückzugeben. Diese Schnittstelle sollte im Allgemeinen auf dem Visual Studio-Computer implementiert werden. Debugmonitorseitige Implementierungen werden möglicherweise nicht aufgerufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmNativeSymbolProviderCallback120a |
Optionale Schnittstelle, die von systemeigenen Symbolanbietern implementiert und vom nativen DM genutzt werden kann, um das Schrittweise zu ermöglichen. Wenn nicht implementiert, wird das native DM auf IDkmNativeSymbolProviderCallback.GetNativeInstructionMetadataCallback und IDkmSymbolProviderCallback.GetSteppingRanges zurückverwendet. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmNatvisComplexityLimitChangedNotification |
Schnittstelle zum Aktualisieren von Komponenten beim Ändern des natvis-Komplexitätslimits. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmNatvisRecursionLimitChangedNotification |
Schnittstelle zum Aktualisieren von Komponenten beim Ändern des Natvis-Rekursionslimits. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmNonDebugProcessExitNotification |
IDkmNonDebugProcessExitNotification wird von Komponenten implementiert, die auf das NonDebugProcessExit-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. NonDebugProcessExit wird ausgelöst, wenn der zugeordnete Nicht-Debugprozess beendet wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. Diese API wurde in Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) eingeführt. |
IDkmObjectFavoritesProvider |
Stellt der IDE die Funktionalität zum Hinzufügen und Entfernen von bevorzugten Elementen für Objekte in den EE-Fenstern bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, EngineId, LanguageId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 16 Update 4 (DkmApiVersion.VS16Update4) eingeführt. |
IDkmOutOfBandExceptionNotification |
IDkmOutOfBandExceptionNotification wird von Komponenten implementiert, die auf das OutOfBandException-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Das Ereignis "OutOfBandException" stellt Benachrichtigungen von Debugmonitoren über Out-of-Band-Ausnahmen bereit, die während des verwalteten/nativen Interopdebuggens innerhalb des Zielprozesses auftreten. Diese Ereignisbenachrichtigung wird vom Ausnahme-Manager verwendet. Out-of-Band-Ereignisse können jederzeit auftreten (auch wenn sie beendet werden) und müssen sofort fortgesetzt werden. OutOfBandException-Ereignisse können unterdrückt werden, indem DkmEventDescriptorS.Suppress() aufgerufen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, ExceptionCategory, RuntimeId. Diese API wurde in Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1) eingeführt. |
IDkmOutOfBandProcessContinueNotification |
Stellt eine Benachrichtigung bereit, wenn der Zielprozess über ein Out-of-Band-Debugereignis fortgesetzt wird, während das verwaltete native Interopdebuggen in der Prozesspipeline ausgeführt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1) eingeführt. |
IDkmOutOfProcessSymbolLoadingEnabledNotification |
Schnittstelle zum Aktualisieren von Komponenten beim Laden nativer Symbole aus dem Prozess ist aktiviert oder deaktiviert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) eingeführt. |
IDkmPendingFileLineBreakpointCallback |
Diese Schnittstelle wird von Komponenten implementiert, die dem Haltepunkt-Manager DkmPendingFileLineBreakpoint-Objekte hinzufügen möchten. Der Haltepunkt-Manager fragt den aktuellen Speicherort für die erste Bindung und während einer Bearbeitungs- und Weiter-Anwendung ab. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SourceId. |
IDkmPerformanceMeasurement140 |
Schnittstelle, die zum Sammeln von Leistungsdaten aus dem Debuggee verwendet wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmProcessContinueNotification |
Stellt eine Benachrichtigung bereit, wenn der Zielprozess fortgesetzt werden soll. Dies wird ausgelöst, nachdem der Benutzer F5 erreicht hat, ein func-eval beginnt, ein anhaltendes Ereignis abgeschlossen ist (z. B. Modulladevorgang) oder ein Beendigungsereignis abgeschlossen ist. Dieser Hauptzweck dieses Ereignisses besteht darin, Komponenten das Leeren aller Caches zu ermöglichen, die sie besitzen. Diese Benachrichtigung kann von jedem Thread aus ausgelöst werden, wird aber nicht erneut ausgelöst. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmProcessCreateNotification |
IDkmProcessCreateNotification wird von Komponenten implementiert, die auf das ProcessCreate-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ProcessCreate wird ausgelöst, wenn ein DkmProcess-Objekt erstellt wird. Dies gibt an, dass der Debugger mit dem Anfügen an den angegebenen Prozess begonnen hat. In Startszenarien wird dieses Ereignis ausgelöst, bevor Code im Zielprozess ausgeführt werden darf. Implementierungen können nur grob basierend auf dem Codetyp im Zielprozess gefiltert werden, und Handler werden auch ausgeführt, während der UI-Thread blockiert wird und darauf wartet, dass die Engine zurückgegeben wird. Aus diesen Gründen ist es oft besser, stattdessen auf das RuntimeInstanceLoad-Ereignis zu lauschen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmProcessDebuggerInitializeWaiter |
Optionale Schnittstelle, die von Debugmonitoren des Basisdebugs implementiert wird, die denselben Ereignisthread für mehrere Prozesse verwenden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmProcessExecutionNotification |
Stellt eine Benachrichtigung bereit, dass der Prozess die Ausführung angehalten oder fortgesetzt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmProcessExitNotification |
IDkmProcessExitNotification wird von Komponenten implementiert, die auf das ProcessExit-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. ProcessExit wird ausgelöst, wenn der Debugger den angegebenen Prozess nicht mehr debugt. Dies kann entweder darauf zurückzuführen sein, dass der Debugger vom angegebenen Prozess getrennt wurde oder weil der Prozess beendet wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmProcessLaunchEnvironmentFilter |
Optionale Schnittstelle, die implementiert werden kann, um die Umgebung des Zielprozesses anzupassen, bevor er gestartet wird. Es ist möglich, die Umgebung aus zwei Punkten anzupassen. Auf der IDE-Seite kann der Aufrufer von LaunchDebugTargets einen Umgebungsblock angeben. Aufseiten des Debugmonitors kann diese API implementiert werden. Diese API wird empfohlen, wenn die IDE-Seite nicht über genügend Informationen verfügt, um die Umgebung ordnungsgemäß anzugeben, oder wenn die Erweiterung den Aufruf von LaunchDebugTargets nicht steuert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId. |
IDkmProcessLaunchEnvironmentFilter140 |
Optionale Schnittstelle, die implementiert werden kann, um die Umgebung des Zielprozesses anzupassen, bevor er gestartet wird. Dies ist eine aktualisierte Version von IDkmProcessLaunchEnvironmentFilter, die für Visual Studio 14.0 hinzugefügt wurde, um umgebungsfiltern zusätzliche Informationen bereitzustellen. Visual Studio 14 und höher ruft sowohl die alte als auch die neue API auf, sodass eine Komponente im Allgemeinen nicht beide Schnittstellen implementieren sollte. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmProcessQueryOperation |
Abfragen des Status des Debugvorgangs. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmProcessSnapshotAddedNotification |
IDkmProcessSnapshotAddedNotification wird von Komponenten implementiert, die auf das ProcessSnapshotAdded-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. ProcessSnapshotAdded wird ausgelöst, wenn ein DkmProcessSnapshot erstellt und dem zugeordneten DkmProcess hinzugefügt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6) eingeführt. |
IDkmProcessSnapshotRemovedNotification |
IDkmProcessSnapshotRemovedNotification wird von Komponenten implementiert, die auf das ProcessSnapshotRemoved-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. ProcessSnapshotRemoved wird ausgelöst, wenn ein DkmProcessSnapshot aus dem zugeordneten DkmProcess entfernt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6) eingeführt. |
IDkmProductionAgent |
Agent-Vorgänge im Zusammenhang mit produktionsbezogenen Diagnose. Der Agent wird gestartet, wobei STDIN und STDOUT umgeleitet werden. Ein Client kann in STDIN schreiben, indem er eine UTF8-Zeichenfolge über die SendMessage-Methode sendet. Wenn der Prozess in STDOUT schreibt, wird DkmCustomMessage::SendToVsService aufgerufen, wobei die Quell-ID auf DkmProductionAgent::UniqueId und der UTF8-codierte Inhalt in Param1 festgelegt ist. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. Diese API wurde in Visual Studio 15 Update 2 (DkmApiVersion.VS15Update2) eingeführt. |
IDkmProductionConnection |
Vorgänge im Zusammenhang mit der Produktion Diagnose. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. Diese API wurde in Visual Studio 15 Update 2 (DkmApiVersion.VS15Update2) eingeführt. |
IDkmRecordedProcessInfoProvider |
Schnittstelle, die von den DM-Basisdiensten implementiert wird, um aufgezeichnete Prozessinformationen bereitzustellen, ohne sie zu debuggen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmRegisterWrite |
Bietet die Möglichkeit, einen Registerwert nach CV-Konstante zu lesen oder zu schreiben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmRequireFullTrustForSourceServerNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn RequireFullTrustForSourceServer aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmReturnValuesNotification |
IDkmReturnValuesNotification wird von Komponenten implementiert, die auf das ReturnValues-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Das ReturnValues-Ereignis wird während eines Schritts gesendet, wenn mindestens ein DkmRawReturnValues erfasst wurde. Die tatsächliche Auswertung wird für das StepComplete-Ereignis in dem Thread ausgeführt, in dem die Rückgabewerte aufgezeichnet wurden. ReturnValues-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmRunningProcessInfoProvider |
Schnittstelle, die von den DM-Basisdiensten implementiert wird, um eine Prozessauflistung bereitzustellen und grundlegende Informationen zu ausgeführten Prozessen bereitzustellen, ohne einen Debugger an den Prozess anzufügen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. |
IDkmRunningProcessInfoProvider160 |
Schnittstelle, die von den DM-Basisdiensten implementiert wird, um eine Prozessauflistung bereitzustellen und grundlegende Informationen zu ausgeführten Prozessen bereitzustellen, ohne einen Debugger an den Prozess anzufügen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) eingeführt. |
IDkmRuntimeBreakpointConditionFailedNotification |
IDkmRuntimeBreakpointConditionFailedNotification wird von Komponenten implementiert, die auf das RuntimeBreakpointConditionFailed-Ereignis lauschen möchten. IDkmRuntimeBreakpointConditionFailedNotification wird nach allen Implementierungen von IDkmRuntimeBreakpointConditionFailedReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Stellt eine Benachrichtigung bereit, dass ein Laufzeithaltepunkt erreicht wurde, aber bei einer Breakpointbedingung ein Laufzeitfehler auftritt. RuntimeBreakpointConditionFailed-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3) eingeführt. |
IDkmRuntimeBreakpointConditionFailedReceived |
IDkmRuntimeBreakpointConditionFailedReceived wird von Komponenten implementiert, die auf das RuntimeBreakpointConditionFailed-Ereignis lauschen möchten. IDkmRuntimeBreakpointConditionFailedReceived wird vor IDkmRuntimeBreakpointConditionFailedNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein Laufzeithaltepunkt erreicht wurde, aber bei einer Breakpointbedingung ein Laufzeitfehler auftritt. RuntimeBreakpointConditionFailed-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3) eingeführt. |
IDkmRuntimeBreakpointHitWithErrorNotification |
IDkmRuntimeBreakpointHitWithErrorNotification wird von Komponenten implementiert, die auf das RuntimeBreakpointHitWithError-Ereignis lauschen möchten. IDkmRuntimeBreakpointHitWithErrorNotification wird nach allen Implementierungen von IDkmRuntimeBreakpointHitWithErrorReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Stellt eine Benachrichtigung bereit, dass ein Laufzeithaltepunkt erreicht wurde, die Verarbeitung jedoch zu einem nicht wiederherstellbaren Fehler geführt hat. Der Prozess wird nun beendet, und der Haltepunkt befindet sich jetzt in einem Fehlerzustand und wird nicht erneut getroffen. RuntimeBreakpointHitWithError-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmRuntimeBreakpointHitWithErrorReceived |
IDkmRuntimeBreakpointHitWithErrorReceived wird von Komponenten implementiert, die auf das RuntimeBreakpointHitWithError-Ereignis lauschen möchten. IDkmRuntimeBreakpointHitWithErrorReceived wird vor IDkmRuntimeBreakpointHitWithErrorNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein Laufzeithaltepunkt erreicht wurde, die Verarbeitung jedoch zu einem nicht wiederherstellbaren Fehler geführt hat. Der Prozess wird nun beendet, und der Haltepunkt befindet sich jetzt in einem Fehlerzustand und wird nicht erneut getroffen. RuntimeBreakpointHitWithError-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmRuntimeBreakpointNotification |
IDkmRuntimeBreakpointNotification wird von Komponenten implementiert, die auf das RuntimeBreakpoint-Ereignis lauschen möchten. IDkmRuntimeBreakpointNotification wird nach allen Implementierungen von IDkmRuntimeBreakpointReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Stellt eine Benachrichtigung bereit, dass ein Laufzeithaltepunkt (DkmRuntimeBreakpoint) erreicht wurde. Laufzeithaltepunkte sind die Breakpointobjekte auf niedriger Ebene. Die Benachrichtigung für die Breakpoints höherer Ebene (DkmPendingBreakpoint/DkmBoundBreakpoint) wird über das BoundBreakpointHit-Ereignis abgerufen. RuntimeBreakpoint-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmRuntimeBreakpointReceived |
IDkmRuntimeBreakpointReceived wird von Komponenten implementiert, die auf das RuntimeBreakpoint-Ereignis lauschen möchten. IDkmRuntimeBreakpointReceived wird vor IDkmRuntimeBreakpointNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein Laufzeithaltepunkt (DkmRuntimeBreakpoint) erreicht wurde. Laufzeithaltepunkte sind die Breakpointobjekte auf niedriger Ebene. Die Benachrichtigung für die Breakpoints höherer Ebene (DkmPendingBreakpoint/DkmBoundBreakpoint) wird über das BoundBreakpointHit-Ereignis abgerufen. RuntimeBreakpoint-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmRuntimeDataBreakpointHitNotification |
IDkmRuntimeDataBreakpointHitNotification wird von Komponenten implementiert, die auf das RuntimeDataBreakpointHit-Ereignis lauschen möchten. IDkmRuntimeDataBreakpointHitNotification wird nach allen Implementierungen von IDkmRuntimeDataBreakpointHitReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Stellt eine Benachrichtigung bereit, dass ein Laufzeitdatenhaltepunkt erreicht wurde. RuntimeDataBreakpointHit-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmRuntimeDataBreakpointHitReceived |
IDkmRuntimeDataBreakpointHitReceived wird von Komponenten implementiert, die auf das RuntimeDataBreakpointHit-Ereignis lauschen möchten. IDkmRuntimeDataBreakpointHitReceived wird vor IDkmRuntimeDataBreakpointHitNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Stellt eine Benachrichtigung bereit, dass ein Laufzeitdatenhaltepunkt erreicht wurde. RuntimeDataBreakpointHit-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmRuntimeDisassemblyProvider |
Wird verwendet, um Anweisungen im Debugadressraum in Bezug auf eine bestimmte Laufzeit zu disassemblieren. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmRuntimeFunctionResolver |
Diese Schnittstelle wird von Ausdrucksauswertern implementiert, die auf dem Zielcomputer geladen werden, um einen Funktions-/Adressausdruck und den anweisungen zuzuordnen, die durch ihn dargestellt werden. Dies wird verwendet, um Funktionshaltepunkte zu binden. Zusätzlich zu Ausdrucksauswertern kann diese Schnittstelle auch von anderen Komponenten implementiert werden, die Funktions breakpoints mithilfe von Daten aus dem Zielprozess binden möchten (z. B. systemeigene Breakpoints für die Exportfunktion). Komponentenfilterung basierend auf LanguageId und/oder VendorId sollte sicherstellen, dass Guid.Empty einer der akzeptierten Werte in ihrem Filter ist. Weitere Informationen finden Sie unter DkmRuntimeFunctionResolutionRequest.CompilerId. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId. |
IDkmRuntimeFunctionResolverClient |
Diese Schnittstelle wird vom Haltepunkt-Manager implementiert, sodass sie eine Benachrichtigung erhalten kann, dass eine Anforderung zur Laufzeitfunktionsauflösung in eine neue Funktion aufgelöst wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId. |
IDkmRuntimeHandleComparer |
Mit dieser Schnittstelle können Concord-Komponenten die Werte von zwei ICorDebugHandleValue-Objekten vergleichen, indem sie die Aufrufe an GetValue über die shim EE weiterleiten, um den richtigen LocalContext einzurichten. Das direkte Aufrufen von GetValue für ein ICorDebugHandleValue-Objekt von Concord führt zu einer Ausnahme, die vom VIL-Host ausgelöst wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmRuntimeInstanceLoadCompleteNotification |
IDkmRuntimeInstanceLoadCompleteNotification wird von Komponenten implementiert, die auf das RuntimeInstanceLoadComplete-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. RuntimeInstanceLoadComplete wird vom Basisdebugmonitor gesendet, wenn das Starten oder Anfügen an den Prozess abgeschlossen ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2) eingeführt. |
IDkmRuntimeInstanceLoadNotification |
IDkmRuntimeInstanceLoadNotification wird von Komponenten implementiert, die auf das RuntimeInstanceLoad-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. RuntimeInstanceLoad wird ausgelöst, wenn ein DkmRuntimeInstance-Objekt erstellt wird. Dieses Ereignis kann verwendet werden, um zu erkennen, dass ein bestimmter Codetyp (z. B. nativ) jetzt in diesem Zielprozess debuggen wird. In Startszenarien wird das RuntimeInstanceLoad-Ereignis ausgelöst, bevor Code des angegebenen Typs die Chance hat, im Zielprozess auszuführen. Beim Debuggen von nativem Code schließt dies den gesamten Code im Zielprozess ein. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmRuntimeInstanceUnloadNotification |
IDkmRuntimeInstanceUnloadNotification wird von Komponenten implementiert, die auf das RuntimeInstanceUnload-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. RuntimeInstanceUnload wird ausgelöst, wenn eine Ausführungsumgebung aus dem Zielprozess entladen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmRuntimeManagedHardwareDataBreakpointInfoProvider |
Stellt CLR-Werte für verwaltete Hardwaredaten bps bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 RTM (DkmApiVersion.VS16RTM) eingeführt. |
IDkmRuntimeMonitorBreakpointHandler |
Stellt Dienste zum Festlegen und Entfernen von Haltepunkten bereit. Diese Schnittstelle wird vom Debugmonitor für die meisten Runtimes implementiert. Die Implementierung muss ein Datenelement verwenden, um die Lebensdauer jedes aktivierten DkmRuntimeBreakpoints nachzuverfolgen, damit der Haltepunkt implizit deaktiviert werden kann, wenn der DkmRuntimeBreakpoint geschlossen wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmRuntimeSetNextStatement |
IDkmRuntimeSetNextStatement ist die Schnittstellenlaufzeitüberwachung, die implementiert wird, um set next-Anweisung zu unterstützen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmRuntimeStepper |
IDkmRuntimeStepper ist die Schnittstellenlaufzeitmonitore, die implementiert werden, um das Schrittschritten zu unterstützen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmScriptDocumentContentInsertNotification |
IDkmScriptDocumentContentInsertNotification wird von Komponenten implementiert, die auf das ScriptDocumentContentInsert-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Benachrichtigung, dass dem Zielprozess neue Inhalte hinzugefügt wurden. Für aggregierte Dokumente (DkmScriptDocumentFlags.AggregateDocument ist festgelegt) ist dies ein neuer Dokumentabschnitt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmScriptDocumentContentRemoveNotification |
IDkmScriptDocumentContentRemoveNotification wird von Komponenten implementiert, die auf das ScriptDocumentContentRemove-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Benachrichtigung, dass Inhalte aus dem Zielprozess entfernt wurden. Für aggregierte Dokumente (DkmScriptDocumentFlags.AggregateDocument ist festgelegt) entspricht dies einem gelöschten Textabschnitt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmScriptDocumentProvider |
Wird von Komponenten implementiert, die DkmScriptDocument-Objekte erstellen, um Dokumentinhalte und Benachrichtigungen bereitzustellen, wenn sich der Inhalt ändert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmScriptDocumentQuery |
API, die vom lokalen Skript-Agent implementiert wird, um Skriptdokumente mit Breakpointanforderungen abzugleichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmScriptDocumentSourceProjectItemChanged |
Schnittstelle zum Aktualisieren von Komponenten, wenn der Projektelementpfad für ein Skriptdokument festgelegt ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmScriptDocumentSymbolProvider |
Wird von Komponenten implementiert, die DkmScriptDocument-Objekte erstellen und diese als Grundlage für die Symbolauflösung verwenden. Diese Schnittstelle muss nicht vom Skriptdokumentsystem implementiert werden, das DkmResolvedDocument.ScriptDocument als NULL belässt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. |
IDkmScriptDocumentTreeNodeCreateNotification |
IDkmScriptDocumentTreeNodeCreateNotification wird von Komponenten implementiert, die auf das ScriptDocumentTreeNodeCreate-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Benachrichtigung, wenn ein neues DkmScriptDocumentTreeNode-Objekt erstellt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. |
IDkmScriptDocumentTreeNodeUnloadNotification |
IDkmScriptDocumentTreeNodeUnloadNotification wird von Komponenten implementiert, die auf das ScriptDocumentTreeNodeUnload-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Benachrichtigung, dass ein DkmScriptDocumentTreeNode aus dem Zielprozess entladen wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId. |
IDkmScriptJmcStateChangeNotification |
IDkmScriptJmcStateChangeNotification wird von Komponenten implementiert, die benachrichtigt werden möchten, wenn sich der JMC-Zustand für ein Skriptdokument ändert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmScriptSymbolCallback |
Rückrufschnittstelle, die von Skriptsymbolanbietern implementiert wird, um schrittweise Anpassungen für Sprachen zu unterstützen, die in JavaScript kompilieren (oder möglicherweise auch andere Skriptsprachen). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Es können die folgenden Eigenschaften verwendet werden: RuntimeId, SymbolProviderId. |
IDkmScriptSymbolsUpdatedNotification |
IDkmScriptSymbolsUpdatedNotification wird von Komponenten implementiert, die auf das ScriptSymbolsUpdated-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. Benachrichtigung, dass der Symbolstatus für mindestens ein Skriptdokument aktualisiert wurde. Dies wird verwendet, um Haltepunkte in skriptbasierten Modulen neu zu binden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmSerializedProcessInfoProvider |
Schnittstelle, die von Basisdebugmonitoren implementiert wird, die ein Prozessabbildformat unterstützen. Derzeit vom Core Dump BDM implementiert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, TransportKind. Diese API wurde in Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8) eingeführt. |
IDkmSerializedProcessInfoProviderFactory |
Factoryschnittstelle zum Abrufen eines IDkmSerializedProcessInfoProvider-instance. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. Diese API wurde in Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8) eingeführt. |
IDkmSetNextStatementQuery |
Ermöglicht der Benutzeroberfläche, abzufragen, ob die aktuelle Anweisung auf eine Adresse festgelegt werden kann. Muss auf Clientseite implementiert werden, da es in Szenarien aufgerufen werden kann, die ein schnelles Ergebnis erfordern, z. B. das Ziehen der IP-Adresse im Debugger-Editor. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmSingleStepCompleteNotification |
IDkmSingleStepCompleteNotification wird von Komponenten implementiert, die auf das SingleStepComplete-Ereignis lauschen möchten. IDkmSingleStepCompleteNotification wird nach allen Implementierungen von IDkmSingleStepCompleteReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Wird gesendet, wenn ein einzelner Schritt eines Threads abgeschlossen ist. SingleStepComplete-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId. |
IDkmSingleStepCompleteReceived |
IDkmSingleStepCompleteReceived wird von Komponenten implementiert, die auf das SingleStepComplete-Ereignis lauschen möchten. IDkmSingleStepCompleteReceived wird vor IDkmSingleStepCompleteNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Wird gesendet, wenn ein einzelner Schritt eines Threads abgeschlossen ist. SingleStepComplete-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SourceId. |
IDkmSourceLinkQuery |
Diese API wird verwendet, um Source Link Informationen zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 15 RTM (DkmApiVersion.VS15RTM) eingeführt. |
IDkmSourceLinkSymbolQuery |
Diese API wird verwendet, um Source Link Konfigurationsinformationen von einem Symbolanbieter zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 RTM (DkmApiVersion.VS17RTM) eingeführt. |
IDkmSourceServerSymbolQuery |
Diese API wird verwendet, um Informationen zu Quellserverdaten von einem Symbolanbieter zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. |
IDkmStackProvider |
Stellt den Stapel bereit, der vom Benutzer angezeigt werden kann. Dieser Stapel wurde gefiltert, kommentiert und gemischt. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmStackWalkFrameAnnotationTextProvider |
Stellt den Präfixtext für eine Stapelrahmenanmerkung bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SourceId. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmStackWalkFrameInterfaceProvider |
Diese Schnittstelle wird von Komponenten implementiert, die Stapelframes beitragen und eine zusätzliche Prüfschnittstelle für Ausdrucksauswerter und andere Komponenten bereitstellen möchten, die den Stapelrahmen untersuchen müssen. HINWEIS: Die Datencontainer-API sollte nicht aus der Implementierung der zurückgegebenen benutzerdefinierten Schnittstelle verwendet werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmStackWalkFrameInterfaceProvider2 |
Diese Schnittstelle wird vom verwalteten Debugmonitor implementiert und bietet Zugriff auf den ICorDebugFrame. HINWEIS: Die Datencontainer-API sollte nicht aus der Implementierung der zurückgegebenen benutzerdefinierten Schnittstelle verwendet werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmStartDebuggingOperations |
Diese Schnittstelle enthält die API zum Starten eines neuen Prozesses unter dem Debugger oder zum Anfügen des Debuggers an einen vorhandenen Prozess. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmStepCompleteNotification |
IDkmStepCompleteNotification wird von Komponenten implementiert, die auf das StepComplete-Ereignis lauschen möchten. IDkmStepCompleteNotification wird nach allen Implementierungen von IDkmStepCompleteReceived aufgerufen. Wenn diese Benachrichtigung aufgerufen wird, wird der Zielprozess beendet, und implementierende Benutzer können den Prozess entweder überprüfen oder eine kontrollierte Ausführung bewirken (Slip, func-eval). Wird von einem Laufzeitmonitor gesendet, wenn ein Schritt erfolgreich abgeschlossen wurde. Beachten Sie, dass der Schritt möglicherweise in einem anderen Thread beendet wird, als er gestartet wurde. StepComplete-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmStepCompleteReceived |
IDkmStepCompleteReceived wird von Komponenten implementiert, die auf das StepComplete-Ereignis lauschen möchten. IDkmStepCompleteReceived wird vor IDkmStepCompleteNotification aufgerufen. Innerhalb dieser Benachrichtigung ist es nicht möglich, die Ausführung des Zielprozesses zu veranlassen (kein func-eval, kein Verrutschen). Wird von einem Laufzeitmonitor gesendet, wenn ein Schritt erfolgreich abgeschlossen wurde. Beachten Sie, dass der Schritt möglicherweise in einem anderen Thread beendet wird, als er gestartet wurde. StepComplete-Ereignisse können durch Aufrufen von DkmEventDescriptorS.Suppress() unterdrückt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmStepOverPropertiesAndOperatorsEnableNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn "IsStepOverPropertiesAndOperatorsEnabled" aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmSteppingCodePathProvider |
Wird von AD7 verwendet, um schrittweise in bestimmte Optionen einzusteigen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, RuntimeId, SymbolProviderId. |
IDkmSteppingManager |
Schnittstelle des Schritt-Managers. Diese Komponente wird von Microsoft implementiert und bietet schrittweise Schiedsverfahren zwischen den verschiedenen Debugmonitoren, die im Prozess aktiv sind. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmSteppingManagerCallback |
Ermöglicht Laufzeitmonitoren das Abrufen von Informationen vom Stepping-Manager. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. |
IDkmSteppingManagerCallback11a |
Erweitert die Information Runtime-Monitore, die vom Stepping-Manager abgerufen werden können. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1) eingeführt. |
IDkmSteppingManagerCallback169 |
Erweitert die Information Runtime-Monitore, die vom Stepping-Manager abgerufen werden können. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SourceId. Diese API wurde in Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) eingeführt. |
IDkmStopDebuggingOperations |
Diese Schnittstelle enthält die API zum Beenden des Debuggens. Diese Schnittstelle muss von Basisdebugmonitoren implementiert werden. Es ist auch möglich, diese Schnittstelle zu implementieren, um das Debuggen beenden für eine bestimmte Anwendung anzupassen. Beispielsweise könnte eine Komponente Terminate erneut implementieren, sodass der Debugger die Anwendung ordnungsgemäß herunterfahren würde, anstatt die TerminateProcess Win32-API zu verwenden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmStowedExceptionProvider |
Schnittstelle, die vom Minidump BDM implementiert wird, um Informationen zu stowed Exception abzufragen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3) eingeführt. |
IDkmSuppressOptimizationsEnableNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn "IsSuppressOptimizationsEnabled" aktiviert oder deaktiviert ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmSymbolAlternateSourcePositionQuery |
Optionale Schnittstelle, die von Symbolanbietern implementiert wird, die mehrere Quellzuordnungen für dasselbe Anweisungssymbol bereitstellen möchten – sowohl eine primäre Zuordnung als auch eine Sicherungszuordnung, falls das primäre Dokument nicht gefunden werden kann. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. Diese API wurde in Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3) eingeführt. |
IDkmSymbolCompilerIdQuery |
Diese API wird verwendet, um die Compiler-ID für ein bestimmtes Symbol abzurufen. Es wird von Symbolanbietern implementiert, die Symbolspeicher unterstützen, in denen die Binärdatei mehrere Sprachen enthalten kann. Anders ausgedrückt: Diese Schnittstelle muss nur implementiert werden, wenn DkmModule.CompilerId auf Guid.Empty/Guid.Empty festgelegt ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. |
IDkmSymbolCompilerIdQueryCallback |
Diese API wird verwendet, um die Compiler-ID für ein bestimmtes Symbol abzurufen. Es wird von Symbolanbietern implementiert, die Symbolspeicher unterstützen, in denen die Binärdatei mehrere Sprachen enthalten kann. Anders ausgedrückt: Diese Schnittstelle muss nur implementiert werden, wenn DkmModule.CompilerId auf Guid.Empty/Guid.Empty festgelegt ist. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. |
IDkmSymbolDisassemblyQuery |
Diese API wird verwendet, um Symbole im Disassemblierungsfenster aufzulösen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. |
IDkmSymbolDocumentCollectionQuery |
Von Symbolanbietern implementierte API, damit der Haltepunkt-Manager und andere Komponenten die Sammlung von Dokumenten innerhalb eines Symbolspeichers abfragen können. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. |
IDkmSymbolDocumentSpanQuery |
Von Symbolanbietern implementierte API, damit der Haltepunkt-Manager und andere Komponenten die Zuordnung "Dokumenttext span-symbol>" abfragen können, die sich in einem Symbolspeicher befindet. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmSymbolFileBytesQuery |
Diese API wird verwendet, um unformatierte Bytes der Symboldatei von der Remoteseite abzurufen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 14 Update 3 Micro Update (DkmApiVersion.VS14Update3MicroUpdate) eingeführt. |
IDkmSymbolFunctionResolver |
Diese Schnittstelle wird von symbolbasierten Ausdrucksauswertern implementiert, um einen Funktions-/Adressausdruck und den anweisungen zuzuordnen, die durch ihn dargestellt werden. Dies wird verwendet, um Funktionshaltepunkte zu binden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, CompilerVendorId, EngineId, LanguageId, SymbolProviderId. |
IDkmSymbolHiddenAttributeQuery |
Diese API wird verwendet, um Informationen zu einem Symbol zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. |
IDkmSymbolLocator |
Schnittstelle, die von Symbolanbietern implementiert wird, die sich mit der Symbolsuche befassen. Anders ausgedrückt: Diese Schnittstelle würde nicht von Symbolanbietern implementiert, die sich nur mit Symbolformaten befassen, die sich innerhalb der gedebuggten Binärdatei befinden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId, TransportKind. |
IDkmSymbolLocator174 |
Schnittstelle, die von Symbolanbietern implementiert wird, die sich mit der Symbolsuche befassen. Anders ausgedrückt: Diese Schnittstelle würde nicht von Symbolanbietern implementiert, die sich nur mit Symbolformaten befassen, die sich innerhalb der gedebuggten Binärdatei befinden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) eingeführt. |
IDkmSymbolLocatorCallback170 |
Stellt Rückrufe für den Symbollocator von der Serverseite bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 RTM (DkmApiVersion.VS17RTM) eingeführt. |
IDkmSymbolLocatorCallback177 |
Stellt Rückrufe für den Symbollocator von der Serverseite bereit. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) eingeführt. |
IDkmSymbolMemoryReader |
Die von Der Basisdebug implementierte Schnittstelle überwacht, die zur Laufzeit Symbole aus dem Arbeitsspeicher von debuggee liest. Diese Schnittstelle wird von Basisdebugmonitoren implementiert, um Symbolformate zu behandeln, die zur Laufzeit im Arbeitsspeicher des Debuggees generiert oder geladen werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. |
IDkmSymbolPathChangeNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn sich die Symboleinstellungen ändern. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. |
IDkmSymbolProviderCallback |
Rückrufschnittstelle, die von Symbolanbietern implementiert wird, um Informationen aus dem Symbolspeicher für Debugmonitore bereitzustellen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmSymbolQuery |
Diese API wird verwendet, um Informationen zu einem Symbol zu lesen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: SymbolProviderId. |
IDkmSymbolQueryCallback |
Ermöglicht Remotekomponenten das Abrufen von Quellpositionsinformationen, wenn sich der Symbolanbieter auf dem VS-Computer befindet. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: RuntimeId, SymbolProviderId. |
IDkmSymbolStackWalk |
Stellt einen Mechanismus zum Durchlaufen nativer Stapelframes mithilfe von Informationen aus Symboldateien bereit. Dieser Mechanismus wird verwendet, um alle Stapelframes zu durchlaufen, die auf dem Zielcomputer nicht aufgelöst werden konnten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, SymbolProviderId. |
IDkmTaskProvider |
Schnittstelle, die von der Aufgabenanbieterkomponente implementiert wird, um Informationen zu Aufgaben abzurufen. Diese Schnittstelle kann in zukünftigen Versionen von Visual Studio geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TaskProviderId. |
IDkmTaskProvider165 |
Schnittstelle, die von der Aufgabenanbieterkomponente implementiert wird, um Informationen zu Aufgaben asynchron abzurufen. Diese Schnittstelle kann in zukünftigen Versionen von Visual Studio geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: EngineId, RuntimeId, SourceId, TaskProviderId. Diese API wurde in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) eingeführt. |
IDkmTaskProviderCreateNotification |
IDkmTaskProviderCreateNotification wird von Komponenten implementiert, die auf das TaskProviderCreate-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Gibt an, dass ein Aufgabenanbieterobjekt erstellt wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TaskProviderId. |
IDkmTaskProviderInitialize |
Optionale Schnittstelle, die von Aufgabenanbietern implementiert wird, um eine Benachrichtigung zu erhalten, wenn Aufgabenanbieter zum ersten Mal für einen bestimmten Prozess angefordert werden. Diese Schnittstelle kann in zukünftigen Versionen von Visual Studio geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmTaskSynchronizationObjectProvider |
Schnittstelle, die von Aufgabenanbieterkomponenten implementiert wird, um den Satz von Synchronisierungsobjekten bereitzustellen, die einem Task gehören. Diese Schnittstelle kann in zukünftigen Versionen von Visual Studio geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TaskProviderId. |
IDkmTerminalLauncher |
Rückrufschnittstelle, die verwendet wird, um ein neues Terminal (Konsole) zu starten, in dem der Zielprozess gestartet wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: TransportKind. Diese API wurde in Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) eingeführt. |
IDkmThreadContextOperation |
Von einem Basisdebugmonitor bereitgestellte Vorgänge zum Abrufen und Aktualisieren des Kontexts eines Threads (Registerwerte). Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmThreadCreateNotification |
IDkmThreadCreateNotification wird von Komponenten implementiert, die auf das ThreadCreate-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ThreadCreate wird ausgelöst, wenn ein neuer Thread im Zielprozess gestartet wird. ThreadCreate-Ereignisse können unterdrückt werden. In diesem Fall ist der Thread für Komponenten über der Ebene unsichtbar, auf der der Thread unterdrückt wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmThreadCurrentWinRtExceptionQuery |
Diese Schnittstelle wird von Laufzeitdebugmonitoren implementiert, um die neuesten WinRT-Ausnahmeinformationen für den angegebenen Thread zurückzugeben. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmThreadDisplayPropertiesQuery |
Wird verwendet, um die Kategorie eines Threads zu bestimmen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmThreadExitNotification |
IDkmThreadExitNotification wird von Komponenten implementiert, die auf das ThreadExit-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. ThreadExit wird ausgelöst, wenn ein Thread im Zielprozess beendet wird. Er wird nicht ausgelöst, wenn der Zielprozess beendet wird, während der Thread noch ausgeführt wird. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmThreadLocationProvider |
Gibt die Position eines Threads an, wie er im Threadfenster oder in der Dropdownliste auf der Symbolleiste des Debugspeicherorts angezeigt wird. Dies wird von der Microsoft-Stapelanbieterkomponente implementiert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmThreadNameChangeNotification |
IDkmThreadNameChangeNotification wird von Komponenten implementiert, die auf das ThreadNameChange-Ereignis lauschen möchten. Wenn diese Benachrichtigung ausgelöst wird, wird der Zielprozess angehalten und kann untersucht werden. ThreadNameChange wird ausgelöst, wenn ein Threadname im Zielprozess geändert wird. Derzeit wird dies nur ausgelöst, wenn der verwaltete Thread seinen Namen ändert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmThreadNameQuery |
Wird verwendet, um den Namen eines Threads zu bestimmen. Gibt den Anzeigenamen des Threads nicht zurück. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, TransportKind. |
IDkmThreadStackRangeProvider |
Gibt die Stapelbasis und den Grenzwert eines Threads zurück. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmThreadSuspension |
Wird aufgerufen, um einen Thread anzusetzen oder fortzusetzen und die aktuelle Anzahl der Threadunterbrechungen zu erhalten. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmTimeTravellingMonitor |
Diese Schnittstelle wird durch Debugmonitore implementiert, die Zeitreisen ermöglichen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8) eingeführt. |
IDkmTlsReadWrite |
Ermöglicht das Lesen und Schreiben von Win32-TLS-Slots innerhalb des Zielprozesses. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmTraceSettingsNotification |
Schnittstelle zum Aktualisieren von Komponenten, wenn Ablaufverfolgungseinstellungen geändert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId. Diese API wurde in Visual Studio 14 RTM (DkmApiVersion.VS14RTM) eingeführt. |
IDkmUserCodeDeterminer |
Bestimmt, ob ein Frame ein Benutzer oder kein Benutzer ist, wenn eine solche Bestimmung bei der Erstellung des Frames nicht vorgenommen wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, RuntimeId, SymbolProviderId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmVirtualMemoryAllocator |
Wird von Basisdebugmonitoren implementiert, um die Zuordnung bzw. frei von virtuellem Arbeitsspeicher im Zielprozess zuzulassen. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmVirtualThreadCreateNotification |
IDkmVirtualThreadCreateNotification wird von Komponenten implementiert, die auf das VirtualThreadCreate-Ereignis lauschen möchten. Der Zielprozess kann während dieser Benachrichtigung weiterhin ausgeführt werden. Wenn VirtualThreadCreate aufgerufen wird, wird ein Ereignis ausgelöst, das die Listener benachrichtigt, dass ein neues DkmVirtualThread erstellt wurde. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 16 Update 6 (DkmApiVersion.VS16Update6) eingeführt. |
IDkmVisualizationDataCompiler |
Optionale Schnittstelle zum Kompilieren von Objektvisualisierungsdaten aus einem lesbaren Formular in ein DkmCompiledVisualizationData-Objekt. Derzeit wird diese Schnittstelle nur von C++ implementiert. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: CompilerVendorId, LanguageId. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmVisualStudioServices |
Schnittstelle, die von AD7AL als Gateway zu Diensten implementiert wird, die vom Rest von Visual Studio bereitgestellt werden. Implementierungen dieser Schnittstelle werden immer aufgerufen (keine Filterung wird unterstützt). Um die Auswirkungen auf den Arbeitsspeicher zu verringern, wird empfohlen, diese Schnittstelle in einer kleinen DLL zu implementieren oder die Implementierung mit "CallOnlyWhenLoaded="true" zu konfigurieren. |
IDkmVisualStudioServices120 |
Schnittstelle, die von AD7AL als Gateway zu Diensten implementiert wird, die vom Rest von Visual Studio bereitgestellt werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. Diese API wurde in Visual Studio 12 RTM (DkmApiVersion.VS12RTM) eingeführt. |
IDkmVolatileMemoryOperation |
Bietet Unterstützung für Lese- und Schreibspeicher. Im Gegensatz zu IDkmMemoryOperation kann diese Schnittstelle verwendet werden, wenn der Prozess ausgeführt wird, und es werden keine Ergebnisse zwischengespeichert, sodass sie mit Sorgfalt verwendet werden sollte. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |
IDkmVolatileThreadProperties |
Macht flüchtige Eigenschaften eines Threads verfügbar, z. B. Prioritäts- und Affinitätsmaske. Es wird erwartet, dass sich diese Werte im Laufe der Zeit ändern und nicht von Aufrufenden zwischengespeichert werden. Implementierungen dieser Schnittstelle können einschränken, wenn sie mithilfe eines in der Komponentenkonfiguration definierten Filters aufgerufen werden. Die folgenden Eigenschaften können verwendet werden: BaseDebugMonitorId, EngineId, TransportKind. |