次の方法で共有


ISensorClassExtension::P rocessIoControl メソッド (sensorsclassextension.h)

ISensorClassExtension::P rocessControl メソッドは、Windows ポータブル デバイス (WPD) I/O コントロール要求をセンサー クラス拡張機能に送信して処理します。

構文

HRESULT ProcessIoControl(
  IWDFIoRequest *pRequest
);

パラメーター

pRequest

UMDF 要求オブジェクトを表す IWDFIoRequest インターフェイスへのポインター。

戻り値

このメソッドは HRESULT を返します。 指定できる値には、次のいずれかの値が含まれますが、これらに限定されません。

リターン コード 形容
S_OK メソッドは成功しました。
E_ACCESS_DENIED アクセス許可がありません。 たとえば、I/O 要求では、アクセス許可が存在しないデータが要求されました。
E_POINTER 必要なポインター引数が NULL でした。
HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED) 要求に WPD IOCTL が含まれていませんでした。

備考

UMDF は、IQueueCallbackDeviceIoControl::OnDeviceIoControl を介してセンサー ドライバーに I/O コントロール要求を送信します。 ProcessIoControl を呼び出して、すべての WPD 要求をセンサー クラス拡張機能に転送して処理することをお勧めします。 WPD マクロ IS_WPD_IOCTLを使用して、特定の制御コードが WPD に固有であるかどうかを判断できます。 Sensor API と Location API のクライアントは WPD IOCTL のみを送信します。WPD IOCTL は、常にセンサー クラス拡張機能によって処理できます。

I/O コントロール要求を処理した後、センサー クラス拡張機能は、ドライバーのコールバック インターフェイス ISensorDriverを使用して、必要に応じて通知を提供します。 センサー クラス拡張機能が既定で処理しない WPD 要求は、ISensorDriver::OnProcessWpdMessageを介してドライバーに送信されます。

ドライバーは、センサー クラス拡張機能に転送する I/O コントロール要求を完了できません。

必要条件

要件 価値
ターゲット プラットフォーム ウィンドウズ
ヘッダー sensorsclassextension.h
ライブラリ SensorsClassExtension.lib

関連項目

ISensorClassExtension