IWDFUsbInterface::GetNumEndPoints メソッド (wudfusb.h)
[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、Windows 10 の新しいバージョンでは UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。 詳細については、「UMDFの概要」を参照してください。
GetNumEndPoints メソッドは、USB インターフェイス上のエンドポイント (パイプ) の数を取得します。
構文
UCHAR GetNumEndPoints();
戻り値
GetNumEndPoints は、USB インターフェイス上のエンドポイントの数を返します。
備考
GetNumEndPoints メソッドは便宜上提供されます。UMDF ドライバーは、IWDFUsbInterface::GetInterfaceDescriptor メソッドを呼び出したときに取得する USB_INTERFACE_DESCRIPTOR 構造体の bNumEndpoints メンバーからエンドポイントの数を取得できるためです。
例
次のコード例では、USB インターフェイス上のパイプの数を取得し、特定の種類のパイプを取得します。
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);
}
}
必要条件
要件 | 価値 |
---|---|
サポート終了 | UMDF 2.0 以降では使用できません。 |
ターゲット プラットフォーム の | デスクトップ |
UMDF の最小バージョン を する | 1.5 |
ヘッダー | wudfusb.h (Wudfusb.h を含む) |
DLL | WUDFx.dll |
関連項目
IWDFUsbInterface の