Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This function initiates an interrupt transfer with a universal serial bus (USB) device on the specified endpoint.
DWORD IssueInterruptTransfer( LPCUSB_FUNCS UsbFuncs, USB_PIPE hPipe, LPTRANSFER_NOTIFY_ROUTINE NotifyRoutine, PVOID NotifyContext, DWORD Flags, LPVOID pBuffer, ULONG PhysAddr, DWORD BufferLength, LPDWORD pBytesTransferred, DWORD dwTimeout, PUSB_ERROR pUsbRc);
Parameters
- UsbFuncs
[in] Pointer to a USB_FUNCS structure. - hPipe
[in] Handle to an open USB pipe. - NotifyRoutine
[in] Pointer to a transfer completion routine of type LPTRANSFER_NOTIFY_ROUTINE, or NULL if no callback routine is necessary. - NotifyContext
[in] Parameter to pass to LPTRANSFER_NOTIFY_ROUTINE. - Flags
[in] Flags for the transfer. These flags shown in the following list are declared in the Usbtypes.h header file.- USB_IN_TRANSFER
- USB_OUT_TRANSFER
- USB_NO_WAIT
- USB_SHORT_TRANSFER_OK
- USB_START_ISOCH_ASAP
- USB_COMPRESS_ISOCH
- USB_SEND_TO_DEVICE
- USB_SEND_TO_INTERFACE
- USB_SEND_TO_ENDPOINT
- USB_DONT_BLOCK_FOR_MEM
- pBuffer
[in] Pointer to the transfer buffer. - PhysAddr
[in] Physical address, which might be NULL, of the data buffer. - BufferLength
[in] Length of the tranfer buffer, pBuffer. - pBytesTransferred
[out] Number of bytes transferred. - dwTimeout
[in] Timeout in milliseconds (ms). - pUsbRc
[out] Returns USB_ERROR or USB_TRANSFER.
Return Values
A USB_TRANSFER handle indicates success. NULL indicates failure. IssueControlTransfer behaves either synchronously or asynchronously, depending on the value you provide for lpStartAddress and whether dwFlags contains the USB_NO_WAIT flag.
The following table shows the possible flags.
lpStartAddress | dwFlags | USB_NO_WAIT | Behavior |
---|---|---|
NULL | 0 | Synchronous |
NULL | USB_NO_WAIT | Asynchronous |
Non-NULL | 0 | Asynchronous |
Non-NULL | USB_NO_WAIT | Asynchronous |
When behaving asynchronously, this function invokes the callback function optionally specified by lpStartAddress when the transfer is complete.
Requirements
OS Versions: Windows CE 2.10 and later.
Header: Usbclient.h.
See Also
AbortTransfer | GetTransferStatus | LPIS_TRANSFER_COMPLETE | LPTRANSFER_NOTIFY_ROUTINE | USB_FUNCS
Send Feedback on this topic to the authors