Platforms to show: All Mac Windows Linux Cross-Platform
WinUSBMBS class
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
class | USB | MBS USB Plugin | 12.2 | ❌ No | ✅ Yes | ❌ No | ❌ No | Desktop, Console & Web |
This class provides funtions exposed by Winusb.dll, which user-mode client drivers and applications can use to communicate with USB devices.
WinUSB functions require Windows XP or later.
see also
http://msdn.microsoft.com/en-us/library/windows/hardware/ff540174(v=vs.85).aspx
and
http://msdn.microsoft.com/en-us/library/windows/hardware/ff540046(v=vs.85).aspx#winusb
For PipeIDs, please use 1, 2, 3... for output pipe IDs and &h81, &h82, &h83... for input pipes.
For Mac you can take a look on the MacUSBDeviceMBS class and the IORegistryMBS class.
See also WinUSBDeviceMBS and WindowsDeviceMBS classes.
For cross platform development also check LibUSBDeviceMBS classes.
- 16 properties
- property DeviceHandle as Integer
- property Lasterror as Integer
- property LasterrorMessage as String
- property Parent as WinUSBMBS
- property Tag as Variant
- property USBHandle as Integer
- property CurrentAlternateSetting as Integer
- property PipePolicyAllowPartialReads(PipeID as Integer) as boolean
- property PipePolicyAutoClearStall(PipeID as Integer) as boolean
- property PipePolicyAutoFlush(PipeID as Integer) as boolean
- property PipePolicyIgnoreShortPackets(PipeID as Integer) as boolean
- property PipePolicyMaximumTransferSize(PipeID as Integer) as Integer
- property PipePolicyPipeTransferTimeout(PipeID as Integer) as UInt32
- property PipePolicyRawIO(PipeID as Integer) as boolean
- property PipePolicyResetPipeOnResume(PipeID as Integer) as boolean
- property PipePolicyShortPacketTerminate(PipeID as Integer) as boolean
- 17 methods
- method AbortPipe(PipeID as Integer)
- method Constructor(path as string)
- method ControlTransfer(SetupPacket as WinUSBSetupPacketMBS, Buffer as MemoryBlock) as Integer
- method ControlTransfer(SetupPacket as WinUSBSetupPacketMBS, Buffer as String) as Integer
- method DeviceSpeed as Integer
- method FlushPipe(PipeID as Integer)
- method GetAssociatedInterface(index as Integer) as WinUSBMBS
- method QueryInterfaceSettings(index as Integer) as WinUSBInterfaceDescriptionMBS
- method QueryPipe(AlternateInterfaceNumber as Integer, PipeIndex as Integer) as WinUSBPipeInformationMBS
- method ReadPipeMemory(PipeID as Integer, BufferLength as Integer) as Memoryblock
- method ReadPipePacket(PipeID as Integer, MaxSize as Integer = 1024) as Memoryblock
- method ReadPipeString(PipeID as Integer, BufferLength as Integer) as string
- method ResetPipe(PipeID as Integer)
- method WritePipe(PipeID as Integer, Buffer as MemoryBlock) as Integer
- method WritePipe(PipeID as Integer, Buffer as String) as Integer
- method WritePipePacket(PipeID as Integer, Buffer as MemoryBlock) as Integer
- method WritePipePacket(PipeID as Integer, Buffer as String) as Integer
- shared method Available as boolean
- 5 constants
Power Policy Type Constants.
Constant | Value | Description |
---|---|---|
AutoSuspend | &h81 | |
SuspendDelay | &h83 |
Device Speed Constants
Constant | Value | Description |
---|---|---|
FullSpeed | 2 |
Full Speed |
HighSpeed | 3 |
High Speed |
LowSpeed | 1 |
Low Speed |
This class has no sub classes.
Some properties using for this class:
- WinUSBMBS.Parent as WinUSBMBS
Some examples using this class:
Blog Entries
- MBS Xojo / Real Studio Plugins, version 16.1pr3
- MonkeyBread Software Releases the MBS Real Studio plug-ins in version 12.5
- MBS Real Studio Plugins, version 12.5pr11
- MBS Real Studio Plugins, version 12.5pr10
- MBS Real Studio Plugins, version 12.3pr17
- MonkeyBread Software Releases the MBS Real Studio plug-ins in version 12.2
- MBS Real Studio Plugins, version 12.2pr7
- MBS Real Studio Plugins, version 12.2pr3
The items on this page are in the following plugins: MBS USB Plugin.
WinUSBInterfaceDescriptionMBS - WinUSBNotificationMBS