Struct windows::Win32::System::Diagnostics::Debug::Extensions::IDebugControl3
pub struct IDebugControl3(/* private fields */);
Implementations§
§impl IDebugControl3
impl IDebugControl3
pub unsafe fn GetInterrupt(&self) -> Result<()>
pub unsafe fn SetInterrupt(&self, flags: u32) -> Result<()>
pub unsafe fn GetInterruptTimeout(&self) -> Result<u32>
pub unsafe fn SetInterruptTimeout(&self, seconds: u32) -> Result<()>
pub unsafe fn GetLogFile( &self, buffer: Option<&mut [u8]>, filesize: Option<*mut u32>, append: *mut BOOL, ) -> Result<()>
pub unsafe fn OpenLogFile<P0, P1>(&self, file: P0, append: P1) -> Result<()>where
P0: Param<PCSTR>,
P1: Param<BOOL>,
pub unsafe fn CloseLogFile(&self) -> Result<()>
pub unsafe fn GetLogMask(&self) -> Result<u32>
pub unsafe fn SetLogMask(&self, mask: u32) -> Result<()>
pub unsafe fn Input( &self, buffer: &mut [u8], inputsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn ReturnInput<P0>(&self, buffer: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn Output<P0>(&self, mask: u32, format: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn OutputVaList<P0>(
&self,
mask: u32,
format: P0,
args: *const i8,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn ControlledOutput<P0>(
&self,
outputcontrol: u32,
mask: u32,
format: P0,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn ControlledOutputVaList<P0>(
&self,
outputcontrol: u32,
mask: u32,
format: P0,
args: *const i8,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn OutputPrompt<P0>(
&self,
outputcontrol: u32,
format: P0,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn OutputPromptVaList<P0>(
&self,
outputcontrol: u32,
format: P0,
args: *const i8,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetPromptText( &self, buffer: Option<&mut [u8]>, textsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn OutputCurrentState( &self, outputcontrol: u32, flags: u32, ) -> Result<()>
pub unsafe fn OutputVersionInformation(&self, outputcontrol: u32) -> Result<()>
pub unsafe fn GetNotifyEventHandle(&self) -> Result<u64>
pub unsafe fn SetNotifyEventHandle(&self, handle: u64) -> Result<()>
pub unsafe fn Assemble<P0>(&self, offset: u64, instr: P0) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn Disassemble( &self, offset: u64, flags: u32, buffer: Option<&mut [u8]>, disassemblysize: Option<*mut u32>, endoffset: *mut u64, ) -> Result<()>
pub unsafe fn GetDisassembleEffectiveOffset(&self) -> Result<u64>
pub unsafe fn OutputDisassembly( &self, outputcontrol: u32, offset: u64, flags: u32, ) -> Result<u64>
pub unsafe fn OutputDisassemblyLines( &self, outputcontrol: u32, previouslines: u32, offset: u64, flags: u32, offsetline: Option<*mut u32>, startoffset: Option<*mut u64>, endoffset: Option<*mut u64>, lineoffsets: Option<&mut [u64]>, ) -> Result<()>
pub unsafe fn GetNearInstruction(&self, offset: u64, delta: i32) -> Result<u64>
pub unsafe fn GetStackTrace( &self, frameoffset: u64, stackoffset: u64, instructionoffset: u64, frames: &mut [DEBUG_STACK_FRAME], framesfilled: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetReturnOffset(&self) -> Result<u64>
pub unsafe fn OutputStackTrace( &self, outputcontrol: u32, frames: Option<&[DEBUG_STACK_FRAME]>, flags: u32, ) -> Result<()>
pub unsafe fn GetDebuggeeType( &self, class: *mut u32, qualifier: *mut u32, ) -> Result<()>
pub unsafe fn GetActualProcessorType(&self) -> Result<u32>
pub unsafe fn GetExecutingProcessorType(&self) -> Result<u32>
pub unsafe fn GetNumberPossibleExecutingProcessorTypes(&self) -> Result<u32>
pub unsafe fn GetPossibleExecutingProcessorTypes( &self, start: u32, types: &mut [u32], ) -> Result<()>
pub unsafe fn GetNumberProcessors(&self) -> Result<u32>
pub unsafe fn GetSystemVersion( &self, platformid: *mut u32, major: *mut u32, minor: *mut u32, servicepackstring: Option<&mut [u8]>, servicepackstringused: Option<*mut u32>, servicepacknumber: *mut u32, buildstring: Option<&mut [u8]>, buildstringused: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetPageSize(&self) -> Result<u32>
pub unsafe fn IsPointer64Bit(&self) -> Result<()>
pub unsafe fn ReadBugCheckData( &self, code: *mut u32, arg1: *mut u64, arg2: *mut u64, arg3: *mut u64, arg4: *mut u64, ) -> Result<()>
pub unsafe fn GetNumberSupportedProcessorTypes(&self) -> Result<u32>
pub unsafe fn GetSupportedProcessorTypes( &self, start: u32, types: &mut [u32], ) -> Result<()>
pub unsafe fn GetProcessorTypeNames( &self, type: u32, fullnamebuffer: Option<&mut [u8]>, fullnamesize: Option<*mut u32>, abbrevnamebuffer: Option<&mut [u8]>, abbrevnamesize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetEffectiveProcessorType(&self) -> Result<u32>
pub unsafe fn SetEffectiveProcessorType(&self, type: u32) -> Result<()>
pub unsafe fn GetExecutionStatus(&self) -> Result<u32>
pub unsafe fn SetExecutionStatus(&self, status: u32) -> Result<()>
pub unsafe fn GetCodeLevel(&self) -> Result<u32>
pub unsafe fn SetCodeLevel(&self, level: u32) -> Result<()>
pub unsafe fn GetEngineOptions(&self) -> Result<u32>
pub unsafe fn AddEngineOptions(&self, options: u32) -> Result<()>
pub unsafe fn RemoveEngineOptions(&self, options: u32) -> Result<()>
pub unsafe fn SetEngineOptions(&self, options: u32) -> Result<()>
pub unsafe fn GetSystemErrorControl( &self, outputlevel: *mut u32, breaklevel: *mut u32, ) -> Result<()>
pub unsafe fn SetSystemErrorControl( &self, outputlevel: u32, breaklevel: u32, ) -> Result<()>
pub unsafe fn GetTextMacro( &self, slot: u32, buffer: Option<&mut [u8]>, macrosize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetTextMacro<P0>(&self, slot: u32, macro: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetRadix(&self) -> Result<u32>
pub unsafe fn SetRadix(&self, radix: u32) -> Result<()>
pub unsafe fn Evaluate<P0>(
&self,
expression: P0,
desiredtype: u32,
value: *mut DEBUG_VALUE,
remainderindex: Option<*mut u32>,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn CoerceValue( &self, in: *const DEBUG_VALUE, outtype: u32, out: *mut DEBUG_VALUE, ) -> Result<()>
pub unsafe fn CoerceValues( &self, count: u32, in: *const DEBUG_VALUE, outtypes: *const u32, out: *mut DEBUG_VALUE, ) -> Result<()>
pub unsafe fn Execute<P0>(
&self,
outputcontrol: u32,
command: P0,
flags: u32,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn ExecuteCommandFile<P0>(
&self,
outputcontrol: u32,
commandfile: P0,
flags: u32,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetNumberBreakpoints(&self) -> Result<u32>
pub unsafe fn GetBreakpointByIndex( &self, index: u32, ) -> Result<IDebugBreakpoint>
pub unsafe fn GetBreakpointById(&self, id: u32) -> Result<IDebugBreakpoint>
pub unsafe fn GetBreakpointParameters( &self, count: u32, ids: Option<*const u32>, start: u32, params: *mut DEBUG_BREAKPOINT_PARAMETERS, ) -> Result<()>
pub unsafe fn AddBreakpoint( &self, type: u32, desiredid: u32, ) -> Result<IDebugBreakpoint>
pub unsafe fn RemoveBreakpoint<P0>(&self, bp: P0) -> Result<()>where
P0: Param<IDebugBreakpoint>,
pub unsafe fn AddExtension<P0>(&self, path: P0, flags: u32) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn RemoveExtension(&self, handle: u64) -> Result<()>
pub unsafe fn GetExtensionByPath<P0>(&self, path: P0) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn CallExtension<P0, P1>(
&self,
handle: u64,
function: P0,
arguments: P1,
) -> Result<()>where
P0: Param<PCSTR>,
P1: Param<PCSTR>,
pub unsafe fn GetExtensionFunction<P0>(
&self,
handle: u64,
funcname: P0,
function: *mut FARPROC,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetWindbgExtensionApis32( &self, api: *mut WINDBG_EXTENSION_APIS32, ) -> Result<()>
pub unsafe fn GetWindbgExtensionApis64( &self, api: *mut WINDBG_EXTENSION_APIS64, ) -> Result<()>
pub unsafe fn GetNumberEventFilters( &self, specificevents: *mut u32, specificexceptions: *mut u32, arbitraryexceptions: *mut u32, ) -> Result<()>
pub unsafe fn GetEventFilterText( &self, index: u32, buffer: Option<&mut [u8]>, textsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetEventFilterCommand( &self, index: u32, buffer: Option<&mut [u8]>, commandsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetEventFilterCommand<P0>(
&self,
index: u32,
command: P0,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetSpecificFilterParameters( &self, start: u32, params: &mut [DEBUG_SPECIFIC_FILTER_PARAMETERS], ) -> Result<()>
pub unsafe fn SetSpecificFilterParameters( &self, start: u32, params: &[DEBUG_SPECIFIC_FILTER_PARAMETERS], ) -> Result<()>
pub unsafe fn GetSpecificFilterArgument( &self, index: u32, buffer: Option<&mut [u8]>, argumentsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetSpecificFilterArgument<P0>(
&self,
index: u32,
argument: P0,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetExceptionFilterParameters( &self, count: u32, codes: Option<*const u32>, start: u32, params: *mut DEBUG_EXCEPTION_FILTER_PARAMETERS, ) -> Result<()>
pub unsafe fn SetExceptionFilterParameters( &self, params: &[DEBUG_EXCEPTION_FILTER_PARAMETERS], ) -> Result<()>
pub unsafe fn GetExceptionFilterSecondCommand( &self, index: u32, buffer: Option<&mut [u8]>, commandsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetExceptionFilterSecondCommand<P0>(
&self,
index: u32,
command: P0,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn WaitForEvent(&self, flags: u32, timeout: u32) -> Result<()>
pub unsafe fn GetLastEventInformation( &self, type: *mut u32, processid: *mut u32, threadid: *mut u32, extrainformation: Option<*mut c_void>, extrainformationsize: u32, extrainformationused: Option<*mut u32>, description: Option<&mut [u8]>, descriptionused: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetCurrentTimeDate(&self) -> Result<u32>
pub unsafe fn GetCurrentSystemUpTime(&self) -> Result<u32>
pub unsafe fn GetDumpFormatFlags(&self) -> Result<u32>
pub unsafe fn GetNumberTextReplacements(&self) -> Result<u32>
pub unsafe fn GetTextReplacement<P0>(
&self,
srctext: P0,
index: u32,
srcbuffer: Option<&mut [u8]>,
srcsize: Option<*mut u32>,
dstbuffer: Option<&mut [u8]>,
dstsize: Option<*mut u32>,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn SetTextReplacement<P0, P1>(
&self,
srctext: P0,
dsttext: P1,
) -> Result<()>where
P0: Param<PCSTR>,
P1: Param<PCSTR>,
pub unsafe fn RemoveTextReplacements(&self) -> Result<()>
pub unsafe fn OutputTextReplacements( &self, outputcontrol: u32, flags: u32, ) -> Result<()>
pub unsafe fn GetAssemblyOptions(&self) -> Result<u32>
pub unsafe fn AddAssemblyOptions(&self, options: u32) -> Result<()>
pub unsafe fn RemoveAssemblyOptions(&self, options: u32) -> Result<()>
pub unsafe fn SetAssemblyOptions(&self, options: u32) -> Result<()>
pub unsafe fn GetExpressionSyntax(&self) -> Result<u32>
pub unsafe fn SetExpressionSyntax(&self, flags: u32) -> Result<()>
pub unsafe fn SetExpressionSyntaxByName<P0>(&self, abbrevname: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetNumberExpressionSyntaxes(&self) -> Result<u32>
pub unsafe fn GetExpressionSyntaxNames( &self, index: u32, fullnamebuffer: Option<&mut [u8]>, fullnamesize: Option<*mut u32>, abbrevnamebuffer: Option<&mut [u8]>, abbrevnamesize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetNumberEvents(&self) -> Result<u32>
pub unsafe fn GetEventIndexDescription<P0>(
&self,
index: u32,
which: u32,
buffer: P0,
buffersize: u32,
descsize: Option<*mut u32>,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetCurrentEventIndex(&self) -> Result<u32>
pub unsafe fn SetNextEventIndex(&self, relation: u32, value: u32) -> Result<u32>
Trait Implementations§
§impl CanInto<IUnknown> for IDebugControl3
impl CanInto<IUnknown> for IDebugControl3
§impl Clone for IDebugControl3
impl Clone for IDebugControl3
§fn clone(&self) -> IDebugControl3
fn clone(&self) -> IDebugControl3
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more§impl Debug for IDebugControl3
impl Debug for IDebugControl3
§impl Deref for IDebugControl3
impl Deref for IDebugControl3
§impl From<&IDebugControl3> for &IUnknown
impl From<&IDebugControl3> for &IUnknown
§fn from(value: &IDebugControl3) -> Self
fn from(value: &IDebugControl3) -> Self
Converts to this type from the input type.
§impl From<IDebugControl3> for IUnknown
impl From<IDebugControl3> for IUnknown
§fn from(value: IDebugControl3) -> Self
fn from(value: IDebugControl3) -> Self
Converts to this type from the input type.
§impl Interface for IDebugControl3
impl Interface for IDebugControl3
§fn as_raw(&self) -> *mut c_void
fn as_raw(&self) -> *mut c_void
Returns the raw COM interface pointer. The resulting pointer continues to be owned by the
Interface
implementation.§fn into_raw(self) -> *mut c_void
fn into_raw(self) -> *mut c_void
Returns the raw COM interface pointer and releases ownership. It the caller’s responsibility to release the COM interface pointer.
§fn cast<T>(&self) -> Result<T, Error>where
T: Interface,
fn cast<T>(&self) -> Result<T, Error>where
T: Interface,
Attempts to cast the current interface to another interface using
QueryInterface
. Read more§fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. Read more§fn is_object<T>(&self) -> boolwhere
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn is_object<T>(&self) -> boolwhere
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
§fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. &MyApp_Impl
, not the inner &MyApp
object. Read more§fn cast_object<T>(&self) -> Result<ComObject<T>, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_object<T>(&self) -> Result<ComObject<T>, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. MyApp_Impl
, not the inner MyApp
object. Read more§fn downgrade(&self) -> Result<Weak<Self>, Error>
fn downgrade(&self) -> Result<Weak<Self>, Error>
Attempts to create a [
Weak
] reference to this object.§impl PartialEq for IDebugControl3
impl PartialEq for IDebugControl3
§fn eq(&self, other: &IDebugControl3) -> bool
fn eq(&self, other: &IDebugControl3) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for IDebugControl3
impl StructuralPartialEq for IDebugControl3
Auto Trait Implementations§
impl Freeze for IDebugControl3
impl RefUnwindSafe for IDebugControl3
impl !Send for IDebugControl3
impl !Sync for IDebugControl3
impl Unpin for IDebugControl3
impl UnwindSafe for IDebugControl3
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)