that are useful to implement USB kernel driver to virtualize usb devices.
These APIs should help to solve the current vbox usb issues on Windows host.
For example, one issue is that when a usb is first used via vbox, the Windows
host machine must be rebooted, which is really inconvenient.
RPMGetAvailableDevices
The RPMGetAvailableDevices routine returns the list of attached USB devices
(except hubs and HIDs).
NTSTATUS
RPMGetAvailableDevices (
IN HANDLE RegisteredDriver,
IN USHORT Locale,
OUT PUSBRPM_DEVICE_LIST *DeviceList)
RPMRegisterAlternateDriver
The RPMRegisterAlternateDriver routine enables the client to register itself in
order to load an alternate driver for a USB device.
NTSTATUS
RPMRegisterAlternateDriver(
IN PDRIVER_OBJECT DriverObject,
IN LPCWSTR CompatibleId,
OUT PHANDLE RegisteredDriver)
RPMLoadAlternateDriverForDevice
The RPMLoadAlternateDriverForDevice routine loads an alternate driver for the
device on a particular hub and connection index.
NTSTATUS
RPMLoadAlternateDriverForDevice (
IN HANDLE RegisteredDriver,
IN ULONG64 HubID,
IN ULONG ConnectionIndex,
IN OPTIONAL REFGUID OwnerGuid)
RPMUnregisterAlternateDriver
The RPMUnregisterAlternateDriver routine allows the client to unregister.
NTSTATUS
RPMUnregisterAlternateDriver (
IN HANDLE RegisteredDriver)
_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev