Home    Prev Next    
Contents
Programming For USB Device
Overview
Programmers Guide
Scenario
Data transfer
Synchronous Transfer
Asynchronous Transfer
Reading Descriptors
USB Support Routines And Structures
Common Procedures
UsbEnumerateDevices
OpenRapidUsb
IsRapidUsbOpened
CloseRapidUsb
Descriptors
UsbGetDescriptor
UsbGetDeviceDescriptor
UsbGetStringDescriptor
UsbGetConfigDescriptor
UsbFreeConfigDescriptor
UsbGetInterfaceDescriptor
UsbFreeInterfaceDescriptor
UsbGetEndpointDescriptor
Configure Device
UsbGetDeviceInfo
UsbUnconfigureDevice
UsbSelectConfig
UsbGetConfig
UsbSelectInterface
UsbGetInterface
UsbResetDevice
UsbGetBandwidthInfo
UsbCyclePort
Features and Status
UsbSetFeature
UsbClearFeature
UsbGetStatus
Vendor/Class Requests
UsbVendorRequestIn
UsbVendorRequestOut
UsbClassRequestIn
UsbClassRequestOut
Pipes
IsRapidUsbPipeOpened
UsbPipeOpen
UsbPipeClose
UsbGetPipeCount
UsbPipeGetInfo
UsbPipeDirectionIn
UsbPipeGetType
UsbTransfer
UsbTransferAsync
TRANSFER_COMPLETION_ROUTINE
UsbCancelTransfer
UsbPipeReset
UsbPipeAbort
Other
UsbGetPortStatus
UsbGetCurrentFrameNumber
USB Structures and Types
RDUSB_DEVICE_INFORMATION
RDUSB_PIPE_INFORMATION
RDUSB_PIPE_TYPE
RDUSB_BANDWIDTH_INFORMATION
UsbSelectInterface
Go to RapidDriver Main Page


Language

Description

C/C++
BOOL UsbSelectInterface(IN USB_DEVICE_HANDLE hUsb, 
IN UCHAR InterfaceIndex,   
IN UCHAR AlternateIndex,   
IN ULONG MaximumTransfer = 0);  

Delphi
function UsbSelectInterface(hUsb            : USB_DEVICE_HANDLE;
                            InterfaceIndex  : UCHAR;
                            AlternateIndex  : UCHAR;
                            MaximumTransfer : ULONG {= 0}) : BOOL; stdcall;

VB
Function UsbSelectInterface (ByVal hUsb As Long, _
                             ByVal InterfaceIndex As Byte, _
                             ByVal AlternateIndex As Byte, _
                             ByVal MaximumTransfer As Long) As Boolean



Parameters
 
hUsb  
Specifies device handle. This handle can be obtained with OpenRapidUsb.  
 
InterfaceIndex  
Device defined index of interface.  
 
AlternateIndex  
Device defined alternate interface index.  
 
MaximumTransfer  
Optional parameter. Maximum pipe transfer request size in bytes for newly selected interface.  

Return Value
 
If function fails it return FALSE. To detect error call GetLastError function.  

Description

Use this function to select interface if device have more than one interface or interface alternate setting. Before calling this function stop all transfers and close all opened pipes with UsbPipeClose function. All opened pipe handles became invalid after interface selection.