Condividi tramite


funzione USBD_IsochUrbAllocate (usbdlib.h)

La routine USBD_IsochUrbAllocate alloca e formatta una struttura URB per una richiesta di trasferimento isochronous.

Nota

Per i driver di Windows Driver Framework (WDF): Se il driver client è basato su WDF, è necessario chiamare il metodo WdfUsbTargetDeviceCreateIsochUrb anziché USBD_IsochUrbAllocate per allocare la memoria per la struttura URB .

Sintassi

NTSTATUS USBD_IsochUrbAllocate(
  [in]  USBD_HANDLE USBDHandle,
  [in]  ULONG       NumberOfIsochPackets,
  [out] PURB        *Urb
);

Parametri

[in] USBDHandle

Handle USBD recuperato dal driver client in una chiamata precedente alla routine di USBD_CreateHandle .

[in] NumberOfIsochPackets

Specifica il numero massimo di pacchetti isochronous necessari per eseguire il trasferimento. Il buffer di trasferimento è descritto in una matrice a lunghezza variabile di strutture USBD_ISO_PACKET_DESCRIPTOR che archivia informazioni su ogni pacchetto, ad esempio offset di byte del pacchetto all'interno del buffer. La matrice viene specificata nel membro IsoPacket della struttura _URB_ISOCH_TRANSFER , utilizzata per definire il formato di una richiesta isochronous.

[out] Urb

Puntatore a unastrutturaae, che riceve l'ISTANZA assegnata da USBD_IsochUrbAllocate. Tutti i membri della struttura VENGONO impostati su zero. L'ALLOCATO È abbastanza grande per contenere il numero massimo di pacchetti isochronosi indicati da NumberOfIsochPacket.

Il driver client deve liberare IL DRIVER al termine dell'uso del driver chiamando USBD_UrbFree.

Valore restituito

La routine USBD_IsochUrbAllocate restituisce STATUS_SUCCESS se la richiesta ha esito positivo. In caso contrario, USBD_UrbAllocate imposta Il valore di Urb su NULL e restituisce un codice di errore di stato NT.

I valori possibili includono, ma non sono limitati a, STATUS_INVALID_PARAMETER, che indica il chiamante passato a NULLUSBDHandle o Urb.

Requisiti

Requisito Valore
Client minimo supportato Richiede WDK per Windows 8. Destinazione Windows Vista e versioni successive del sistema operativo Windows.
Piattaforma di destinazione Desktop
Intestazione usbdlib.h
Libreria Usbdex.lib
IRQL <=DISPATCH_LEVEL

Vedi anche