Método IWDFUsbInterface::GetNumEndPoints (wudfusb.h)

[Advertencia: UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los controladores UMDF nuevos deben escribirse con UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción con UMDF.

El método GetNumEndPoints recupera el número de puntos de conexión (canalizaciones) en una interfaz USB.

Sintaxis

UCHAR GetNumEndPoints();

Valor devuelto

GetNumEndPoints devuelve el número de puntos de conexión en la interfaz USB.

Comentarios

El método GetNumEndPoints se proporciona para mayor comodidad porque un controlador UMDF puede obtener el número de puntos de conexión del miembro bNumEndpoints de la estructura USB_INTERFACE_DESCRIPTOR que recupera el controlador cuando llama al método IWDFUsbInterface::GetInterfaceDescriptor .

Ejemplos

En el ejemplo de código siguiente se recupera el número de canalizaciones en una interfaz USB y, a continuación, se recuperan determinados tipos de canalizaciones.

 HRESULT  hr;
 UCHAR  NumEndPoints;
 NumEndPoints = pIUsbInterface->GetNumEndPoints();

 if (NumEndPoints != NUM_OSRUSB_ENDPOINTS) {
     hr = E_UNEXPECTED;
 }
 if (SUCCEEDED(hr))  {
     for (UCHAR PipeIndex = 0; PipeIndex < NumEndPoints; PipeIndex++) {
     hr = pIUsbInterface->RetrieveUsbPipeObject(PipeIndex, 
                                                &pIUsbPipe);
     if (FAILED(hr)) {
        // Output an error.
     }
     else {
         if ( pIUsbPipe->IsInEndPoint() && (UsbdPipeTypeBulk == pIUsbPipe->GetType()) ) {
             pIUsbInputPipe = pIUsbPipe;
         }
         else if ( pIUsbPipe->IsOutEndPoint() && (UsbdPipeTypeBulk == pIUsbPipe->GetType()) )
         {
              pIUsbOutputPipe = pIUsbPipe;
         }
         else
              {
                  SAFE_RELEASE(pIUsbPipe);
              }
          }

Requisitos

Requisito Value
Finalización del soporte técnico No disponible en UMDF 2.0 y versiones posteriores.
Plataforma de destino Escritorio
Versión mínima de UMDF 1.5
Encabezado wudfusb.h (incluya Wudfusb.h)
Archivo DLL WUDFx.dll

Consulte también

IWDFUsbInterface

IWDFUsbInterface::GetInterfaceDescriptor

USB_INTERFACE_DESCRIPTOR