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. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 für neuere Versionen von Windows 10 ist eingeschränkt. 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.
Hinweise
Die GetNumEndPoints-Methode wird zur Vereinfachung bereitgestellt, da ein UMDF-Treiber die Anzahl von Endpunkten aus dem bNumEndpoints-Member der USB_INTERFACE_DESCRIPTOR Struktur abrufen kann, die der Treiber beim Aufrufen der IWDFUsbInterface::GetInterfaceDescriptor-Methode abruft.
Beispiele
Im folgenden Codebeispiel wird die Anzahl der Pipes 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 |
UMDF-Mindestversion | 1.5 |
Kopfzeile | wudfusb.h (einschließlich Wudfusb.h) |
DLL | WUDFx.dll |