windows::Win32::Devices::DeviceAccess

Trait IDeviceIoControl_Impl

pub trait IDeviceIoControl_Impl: IUnknownImpl {
    // Required methods
    fn DeviceIoControlSync(
        &self,
        iocontrolcode: u32,
        inputbuffer: *const u8,
        inputbuffersize: u32,
        outputbuffer: *mut u8,
        outputbuffersize: u32,
        bytesreturned: *mut u32,
    ) -> Result<()>;
    fn DeviceIoControlAsync(
        &self,
        iocontrolcode: u32,
        inputbuffer: *const u8,
        inputbuffersize: u32,
        outputbuffer: *mut u8,
        outputbuffersize: u32,
        requestcompletioncallback: Ref<'_, IDeviceRequestCompletionCallback>,
        cancelcontext: *mut usize,
    ) -> Result<()>;
    fn CancelOperation(&self, cancelcontext: usize) -> Result<()>;
}

Required Methods§

fn DeviceIoControlSync( &self, iocontrolcode: u32, inputbuffer: *const u8, inputbuffersize: u32, outputbuffer: *mut u8, outputbuffersize: u32, bytesreturned: *mut u32, ) -> Result<()>

fn DeviceIoControlAsync( &self, iocontrolcode: u32, inputbuffer: *const u8, inputbuffersize: u32, outputbuffer: *mut u8, outputbuffersize: u32, requestcompletioncallback: Ref<'_, IDeviceRequestCompletionCallback>, cancelcontext: *mut usize, ) -> Result<()>

fn CancelOperation(&self, cancelcontext: usize) -> Result<()>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§