Freigeben über


ICorDebugProcess::SetThreadContext-Methode

Legt den Kontext für den angegebenen Thread in diesem Prozess fest.

HRESULT SetThreadContext(
    [in] DWORD threadID,
    [in] ULONG32 contextSize,
    [in, length_is(contextSize), size_is(contextSize)]
    BYTE context[]);

Parameter

  • threadID
    [in] Die ID des Threads, für den der Kontext festgelegt werden soll.

  • contextSize
    [in] Die Größe des context-Arrays.

  • context
    [in] Ein Array von Bytes, die den Kontext des Threads beschreiben.

    Der Kontext gibt die Architektur des Prozessors an, auf dem der Thread ausgeführt wird.

Hinweise

Der Debugger sollte diese Methode anstelle der Win32-SetThreadContext-Funktion aufrufen, da sich der Thread möglicherweise eigentlich in einem "fremdgesteuerten" Zustand befindet, in dem sein Kontext vorübergehend geändert wurde. Diese Methode sollte nur verwendet werden, wenn ein Thread in systemeigenem Code vorliegt. Verwenden Sie für Threads in verwaltetem Code die ICorDebugRegisterSet-Methode. Sie sollten nie den Kontext eines Threads während eines OOB-Debugereignisses (Out-of-Bands) ändern müssen.

Die übergebenen Daten müssen eine Kontextstruktur für die aktuelle Plattform sein.

Diese Methode kann bei nicht ordnungsgemäßer Verwendung die Common Language Runtime beschädigen.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Siehe auch

Referenz

ICorDebugProcess-Schnittstelle

ICorDebugProcess2-Schnittstelle