DkmThread.Create Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
DkmThread is called by a debug monitor to create a new DkmThread instance. DkmThread objects for system threads are created by the base debug monitor. This method must be called on the event thread.
This method will send a ThreadCreate event.
Location constraint: API must be called from a Monitor component (component level < 100,000).
public:
static Microsoft::VisualStudio::Debugger::DkmThread ^ Create(Microsoft::VisualStudio::Debugger::DkmProcess ^ Process, System::UInt64 NativeStartAddress, System::UInt64 TebAddress, bool IsMainThread, Microsoft::VisualStudio::Debugger::DkmThread::System ^ System, Microsoft::VisualStudio::Debugger::DkmDataItem ^ DataItem);
public static Microsoft.VisualStudio.Debugger.DkmThread Create (Microsoft.VisualStudio.Debugger.DkmProcess Process, ulong NativeStartAddress, ulong TebAddress, bool IsMainThread, Microsoft.VisualStudio.Debugger.DkmThread.System System, Microsoft.VisualStudio.Debugger.DkmDataItem DataItem);
public static Microsoft.VisualStudio.Debugger.DkmThread Create (Microsoft.VisualStudio.Debugger.DkmProcess Process, ulong NativeStartAddress, ulong TebAddress, bool IsMainThread, Microsoft.VisualStudio.Debugger.DkmThread.System? System, Microsoft.VisualStudio.Debugger.DkmDataItem? DataItem);
static member Create : Microsoft.VisualStudio.Debugger.DkmProcess * uint64 * uint64 * bool * Microsoft.VisualStudio.Debugger.DkmThread.System * Microsoft.VisualStudio.Debugger.DkmDataItem -> Microsoft.VisualStudio.Debugger.DkmThread
Public Shared Function Create (Process As DkmProcess, NativeStartAddress As ULong, TebAddress As ULong, IsMainThread As Boolean, System As DkmThread.System, DataItem As DkmDataItem) As DkmThread
Parameters
- Process
- DkmProcess
[In] DkmProcess represents a target process which is being debugged. The debugger debugs processes, so this is the basic unit of debugging. A DkmProcess can represent a system process or a virtual process such as minidumps.
- NativeStartAddress
- UInt64
[In] If available, this is the Win32 start address of this thread (value passed to the CreateThread API). The value will not always be available, for example, it is generally not available in scenarios where the thread was started after the debugger attached, or in minidumps.
- TebAddress
- UInt64
[In] Address within the target process, where the Win32 thread environment block is stored. See documentation on the TEB structure in MSDN for more information.
- IsMainThread
- Boolean
[In] True if this is the main thread of this process. The main thread is the first thread to start.
- System
- DkmThread.System
[In,Optional] Describes traits of the thread which are relevant to a full Win32 thread. Currently, this value is required, and all threads will have a 'System' block. In the future, this value may be NULL if the DkmThread represents something other than a full Win32 thread.
- DataItem
- DkmDataItem
[In,Optional] Data object to add to the new DkmThread instance. Pass 'null' in the case that the caller doesn't need to add a data item.
Returns
[Out] Result of this method call.