Share via


IDeviceIoControl::D eviceIoControlAsync メソッド (deviceaccess.h)

DeviceIoControlAsync メソッドは、CreateDeviceAccessInstance 関数の呼び出しが指定されたデバイス インターフェイスに非同期デバイス入出力 (I/O) 制御要求を送信します。

構文

HRESULT DeviceIoControlAsync(
  [in]  DWORD                            ioControlCode,
  [in]  UCHAR                            *inputBuffer,
  [in]  DWORD                            inputBufferSize,
  [out] UCHAR                            *outputBuffer,
  [in]  DWORD                            outputBufferSize,
  [in]  IDeviceRequestCompletionCallback *requestCompletionCallback,
  [out] ULONG_PTR                        *cancelContext
);

パラメーター

[in] ioControlCode

操作の I/O 制御コード。

[in] inputBuffer

操作の省略可能な入力バッファー。

[in] inputBufferSize

入力バッファーのサイズ (バイト単位)。

[out] outputBuffer

操作の操作出力バッファー。

[in] outputBufferSize

出力バッファーのサイズ (バイト単位)。

[in] requestCompletionCallback

操作が正常に送信された場合に RequestCompletion メソッドが呼び出されるコールバック インターフェイス。

[out] cancelContext

CancelOperation メソッドに渡して未処理の要求を取り消すことができるキャンセル コンテキストを受け取る省略可能なポインター。

戻り値

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

要求が正常に送信された場合 (つまり、この関数を呼び出してもすぐにエラーが返されません)、操作の結果は、指定された IDeviceRequestCompletionCallback インターフェイスの RequestCompletion コールバックで使用できます。

システム (オペレーティング システムまたはデバイス ドライバー) が直ちに失敗した操作では、コールバックは発生しません。つまり、呼び出し元は、この関数が S_OKを返す場合にのみコールバックを受け取ります。

要件

要件
対象プラットフォーム Windows
ヘッダー deviceaccess.h
Library Deviceaccess.lib

こちらもご覧ください

IDeviceIoControl