Condividi tramite


funzione WinUsb_RegisterIsochBuffer (winusb.h)

La funzione WinUsb_RegisterIsochBuffer registra un buffer da usare per i trasferimenti isochronous.

Sintassi

BOOL WinUsb_RegisterIsochBuffer(
  [in]  WINUSB_INTERFACE_HANDLE     InterfaceHandle,
  [in]  UCHAR                       PipeID,
  [in]  PUCHAR                      Buffer,
  [in]  ULONG                       BufferLength,
  [out] PWINUSB_ISOCH_BUFFER_HANDLE IsochBufferHandle
);

Parametri

[in] InterfaceHandle

Handle opaco a un'interfaccia nella configurazione selezionata. Tale handle deve essere creato da una chiamata precedente a WinUsb_Initialize o WinUsb_GetAssociatedInterface.

[in] PipeID

Derivata da Bit 3...0 del campo bEndpointAddress nel descrittore dell'endpoint.

[in] Buffer

Puntatore al buffer di trasferimento da registrare.

[in] BufferLength

Lunghezza, in byte, del buffer di trasferimento a cui fa riferimento buffer.

[out] IsochBufferHandle

Riceve un handle opaco nel buffer registrato. Questo handle è richiesto da altre funzioni WinUSB che eseguono trasferimenti isochronous. Per rilasciare l'handle, chiamare la funzione WinUsb_UnregisterIsochBuffer .

Valore restituito

WinUsb_RegisterIsochBuffer restituisce TRUE se l'operazione ha esito positivo. In caso contrario, questa funzione restituisce FALSE e il chiamante può recuperare l'errore registrato chiamando GetLastError.

Se il chiamante imposta ContinueStream su TRUE, il trasferimento ha esito negativo se Winusb.sys non è in grado di pianificare il trasferimento per continuare il flusso senza eliminare uno o più frame.

Commenti

Prima di avviare trasferimenti isochronous a o da un buffer, il chiamante deve registrare il buffer con WinUsb_RegisterIsochBuffer. Questa chiamata consente all'Winusb.sys di pre-mappare e bloccare il buffer dopo tutti i trasferimenti successivi usando il buffer.

Requisiti

Requisito Valore
Client minimo supportato Windows 8.1
Server minimo supportato Windows Server 2012 R2
Piattaforma di destinazione Universale
Intestazione winusb.h (include Winusb.h)
Libreria Winusb.lib
DLL Winusb.dll

Vedi anche

Inviare trasferimenti USB isochronous da un'app desktop WinUSB

Funzioni WinUSB

WinUsb_UnregisterIsochBuffer