- USBIO Device is useful for developing, debugging, and testing USB devices and firmware. It enables rapid development of debug and test applications.The development kit includes the generic device driver USBIO, which provides Win32 applications with direct access to USB 1.1 and USB 2.0 devices which are otherwise only accessible from kernel mode. It can be used with any kind of USB device, enabling application developers to control devices without having to develop a kernel-mode WDM driver. The USBIO driver provides an extensive programming interface based on standard Windows API functions such as ReadFile, WriteFile, and DeviceIoControl. It supports the complete USB functionality and is optimized for maximum efficiency. Data transfer to or from USB devices is very similar to standard Win32 file I/O operations.
The Win32 native USBIO programming interface is ideal for use in programming languages such as C and C++. The USBIO package includes a C++ class library, providing an easy-to-use interface. To support Java application development, a Java class library that is based on a JNI DLL is provided.
A high-level programming interface, the USBIO COM interface, is also available. This is based on Microsoft's Component Object Model (COM) technology and provides an extension to the native USBIO programming interface. The COM interface allows the easy integration of USB functionality into Visual Basic, Delphi and C# applications. Several source code examples demonstrate usage of the programming interfaces and show how an application controls a USB device. The USBIO software components can be integrated into a final product, with product-specific adaptations if necessary (e.g. file names, installation paths, copyright messages). The result is a customized version that can be shipped as part of an end user product.