Freigeben über


IWDFUsbInterface::GetNumEndPoints-Methode (wudfusb.h)

[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. Es werden keine neuen Features zu UMDF 1 hinzugefügt, und es gibt eingeschränkte Unterstützung für UMDF 1 für neuere Versionen von Windows 10. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF-.]

Die GetNumEndPoints- Methode ruft die Anzahl der Endpunkte (Pipes) auf einer USB-Schnittstelle ab.

Syntax

UCHAR GetNumEndPoints();

Rückgabewert

GetNumEndPoints gibt die Anzahl der Endpunkte auf der USB-Schnittstelle zurück.

Bemerkungen

Die GetNumEndPoints--Methode wird zur Vereinfachung bereitgestellt, da ein UMDF-Treiber die Anzahl der Endpunkte aus dem bNumEndpoints Member der USB_INTERFACE_DESCRIPTOR-Struktur abrufen kann, die der Treiber abruft, wenn er die IWDFUsbInterface::GetInterfaceDescriptor Methode aufruft.

Beispiele

Im folgenden Codebeispiel wird die Anzahl der Rohre auf einer USB-Schnittstelle abgerufen und dann bestimmte Typen von Rohren abgerufen.

 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);
              }
          }

Anforderungen

Anforderung Wert
Ende des Supports In UMDF 2.0 und höher nicht verfügbar.
Zielplattform- Desktop
Mindest-UMDF-Version 1.5
Header- wudfusb.h (include Wudfusb.h)
DLL- WUDFx.dll

Siehe auch

IWDFUsbInterface-

IWDFUsbInterface::GetInterfaceDescriptor

USB_INTERFACE_DESCRIPTOR