Struct windows::Win32::System::Diagnostics::Debug::Extensions::IDebugSymbols
pub struct IDebugSymbols(/* private fields */);
Implementations§
§impl IDebugSymbols
impl IDebugSymbols
pub unsafe fn GetSymbolOptions(&self) -> Result<u32>
pub unsafe fn AddSymbolOptions(&self, options: u32) -> Result<()>
pub unsafe fn RemoveSymbolOptions(&self, options: u32) -> Result<()>
pub unsafe fn SetSymbolOptions(&self, options: u32) -> Result<()>
pub unsafe fn GetNameByOffset( &self, offset: u64, namebuffer: Option<&mut [u8]>, namesize: Option<*mut u32>, displacement: Option<*mut u64>, ) -> Result<()>
pub unsafe fn GetOffsetByName<P0>(&self, symbol: P0) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn GetNearNameByOffset( &self, offset: u64, delta: i32, namebuffer: Option<&mut [u8]>, namesize: Option<*mut u32>, displacement: Option<*mut u64>, ) -> Result<()>
pub unsafe fn GetLineByOffset( &self, offset: u64, line: Option<*mut u32>, filebuffer: Option<&mut [u8]>, filesize: Option<*mut u32>, displacement: Option<*mut u64>, ) -> Result<()>
pub unsafe fn GetOffsetByLine<P0>(&self, line: u32, file: P0) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn GetNumberModules( &self, loaded: *mut u32, unloaded: *mut u32, ) -> Result<()>
pub unsafe fn GetModuleByIndex(&self, index: u32) -> Result<u64>
pub unsafe fn GetModuleByModuleName<P0>(
&self,
name: P0,
startindex: u32,
index: Option<*mut u32>,
base: Option<*mut u64>,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetModuleByOffset( &self, offset: u64, startindex: u32, index: Option<*mut u32>, base: Option<*mut u64>, ) -> Result<()>
pub unsafe fn GetModuleNames( &self, index: u32, base: u64, imagenamebuffer: Option<&mut [u8]>, imagenamesize: Option<*mut u32>, modulenamebuffer: Option<&mut [u8]>, modulenamesize: Option<*mut u32>, loadedimagenamebuffer: Option<&mut [u8]>, loadedimagenamesize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetModuleParameters( &self, count: u32, bases: Option<*const u64>, start: u32, params: *mut DEBUG_MODULE_PARAMETERS, ) -> Result<()>
pub unsafe fn GetSymbolModule<P0>(&self, symbol: P0) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn GetTypeName( &self, module: u64, typeid: u32, namebuffer: Option<&mut [u8]>, namesize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetTypeId<P0>(&self, module: u64, name: P0) -> Result<u32>where
P0: Param<PCSTR>,
pub unsafe fn GetTypeSize(&self, module: u64, typeid: u32) -> Result<u32>
pub unsafe fn GetFieldOffset<P0>(
&self,
module: u64,
typeid: u32,
field: P0,
) -> Result<u32>where
P0: Param<PCSTR>,
pub unsafe fn GetSymbolTypeId<P0>(
&self,
symbol: P0,
typeid: *mut u32,
module: Option<*mut u64>,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetOffsetTypeId( &self, offset: u64, typeid: *mut u32, module: Option<*mut u64>, ) -> Result<()>
pub unsafe fn ReadTypedDataVirtual( &self, offset: u64, module: u64, typeid: u32, buffer: *mut c_void, buffersize: u32, bytesread: Option<*mut u32>, ) -> Result<()>
pub unsafe fn WriteTypedDataVirtual( &self, offset: u64, module: u64, typeid: u32, buffer: *const c_void, buffersize: u32, byteswritten: Option<*mut u32>, ) -> Result<()>
pub unsafe fn OutputTypedDataVirtual( &self, outputcontrol: u32, offset: u64, module: u64, typeid: u32, flags: u32, ) -> Result<()>
pub unsafe fn ReadTypedDataPhysical( &self, offset: u64, module: u64, typeid: u32, buffer: *mut c_void, buffersize: u32, bytesread: Option<*mut u32>, ) -> Result<()>
pub unsafe fn WriteTypedDataPhysical( &self, offset: u64, module: u64, typeid: u32, buffer: *const c_void, buffersize: u32, byteswritten: Option<*mut u32>, ) -> Result<()>
pub unsafe fn OutputTypedDataPhysical( &self, outputcontrol: u32, offset: u64, module: u64, typeid: u32, flags: u32, ) -> Result<()>
pub unsafe fn GetScope( &self, instructionoffset: Option<*mut u64>, scopeframe: Option<*mut DEBUG_STACK_FRAME>, scopecontext: Option<*mut c_void>, scopecontextsize: u32, ) -> Result<()>
pub unsafe fn SetScope( &self, instructionoffset: u64, scopeframe: Option<*const DEBUG_STACK_FRAME>, scopecontext: Option<*const c_void>, scopecontextsize: u32, ) -> Result<()>
pub unsafe fn ResetScope(&self) -> Result<()>
pub unsafe fn GetScopeSymbolGroup<P0>(
&self,
flags: u32,
update: P0,
) -> Result<IDebugSymbolGroup>where
P0: Param<IDebugSymbolGroup>,
pub unsafe fn CreateSymbolGroup(&self) -> Result<IDebugSymbolGroup>
pub unsafe fn StartSymbolMatch<P0>(&self, pattern: P0) -> Result<u64>where
P0: Param<PCSTR>,
pub unsafe fn GetNextSymbolMatch( &self, handle: u64, buffer: Option<&mut [u8]>, matchsize: Option<*mut u32>, offset: Option<*mut u64>, ) -> Result<()>
pub unsafe fn EndSymbolMatch(&self, handle: u64) -> Result<()>
pub unsafe fn Reload<P0>(&self, module: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetSymbolPath( &self, buffer: Option<&mut [u8]>, pathsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetSymbolPath<P0>(&self, path: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn AppendSymbolPath<P0>(&self, addition: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetImagePath( &self, buffer: Option<&mut [u8]>, pathsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetImagePath<P0>(&self, path: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn AppendImagePath<P0>(&self, addition: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetSourcePath( &self, buffer: Option<&mut [u8]>, pathsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn GetSourcePathElement( &self, index: u32, buffer: Option<&mut [u8]>, elementsize: Option<*mut u32>, ) -> Result<()>
pub unsafe fn SetSourcePath<P0>(&self, path: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn AppendSourcePath<P0>(&self, addition: P0) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn FindSourceFile<P0>(
&self,
startelement: u32,
file: P0,
flags: u32,
foundelement: Option<*mut u32>,
buffer: Option<&mut [u8]>,
foundsize: Option<*mut u32>,
) -> Result<()>where
P0: Param<PCSTR>,
pub unsafe fn GetSourceFileLineOffsets<P0>(
&self,
file: P0,
buffer: Option<&mut [u64]>,
filelines: Option<*mut u32>,
) -> Result<()>where
P0: Param<PCSTR>,
Trait Implementations§
§impl CanInto<IUnknown> for IDebugSymbols
impl CanInto<IUnknown> for IDebugSymbols
§impl Clone for IDebugSymbols
impl Clone for IDebugSymbols
§fn clone(&self) -> IDebugSymbols
fn clone(&self) -> IDebugSymbols
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 IDebugSymbols
impl Debug for IDebugSymbols
§impl Deref for IDebugSymbols
impl Deref for IDebugSymbols
§impl From<&IDebugSymbols> for &IUnknown
impl From<&IDebugSymbols> for &IUnknown
§fn from(value: &IDebugSymbols) -> Self
fn from(value: &IDebugSymbols) -> Self
Converts to this type from the input type.
§impl From<IDebugSymbols> for IUnknown
impl From<IDebugSymbols> for IUnknown
§fn from(value: IDebugSymbols) -> Self
fn from(value: IDebugSymbols) -> Self
Converts to this type from the input type.
§impl Interface for IDebugSymbols
impl Interface for IDebugSymbols
§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 IDebugSymbols
impl PartialEq for IDebugSymbols
§fn eq(&self, other: &IDebugSymbols) -> bool
fn eq(&self, other: &IDebugSymbols) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for IDebugSymbols
impl StructuralPartialEq for IDebugSymbols
Auto Trait Implementations§
impl Freeze for IDebugSymbols
impl RefUnwindSafe for IDebugSymbols
impl !Send for IDebugSymbols
impl !Sync for IDebugSymbols
impl Unpin for IDebugSymbols
impl UnwindSafe for IDebugSymbols
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
)