IRequestCallbackCancel::OnCancel メソッド (wudfddi.h)
[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、Windows 10 の新しいバージョンでは UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。 詳細については、「UMDFの概要」を参照してください。
OnCancel メソッドは、アプリケーションが Microsoft Win32 CancelIo、CancelIoEx、または CancelSynchronousIo 関数を使用して I/O 操作 取り消すと呼び出されます。
構文
void OnCancel(
[in] IWDFIoRequest *pWdfRequest
);
パラメーター
[in] pWdfRequest
取り消すフレームワーク要求オブジェクトを表す IWDFIoRequest インターフェイスへのポインター。
戻り値
何一つ
備考
フレームワークは、OnCancel メソッドを呼び出して、pWdfRequest パラメーターが識別する I/O 要求を取り消します。 ドライバーはまず、I/O 要求を取り消すことができるかどうかを判断する必要があります。 要求を取り消すことができる場合、ドライバーはそれを取り消す必要があります。 要求を取り消す方法の詳細については、「I/O 要求を取り消す」を参照してください。
ドライバーが要求を取り消した場合は、CompletionStatus パラメーターを HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED) に設定して、IWDFIoRequest::Complete メソッドを呼び出して要求を完了する必要もあります。
このフレームワークでは 、以前に IWDFIoRequest::MarkCancelable メソッドを呼び出して要求の取り消しを有効にし、IRequestCallbackCancel インターフェイスを登録しない限り、要求を取り消すために OnCancel を呼び出しません。
User-Mode Driver Framework (UMDF) では、キューごとに 1 つの OnCancel メソッドのみを使用できます。 そのため、ドライバーが特定のキューに関連付けられている要求 IWDFIoRequest::MarkCancelable を呼び出して、フレームワークがこれらの要求を取り消せるようにする場合、ドライバーは、同じ要求コールバック オブジェクトの IRequestCallbackCancel インターフェイスへのポインターを渡す必要があります。 その後、各要求を取り消すために、フレームワークは、この要求コールバック オブジェクトの OnCancel メソッドの呼び出しで、要求の IWDFIoRequest インターフェイスへのポインターを渡します。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | ウィンドウズ |
ヘッダー | wudfddi.h (Wudfddi.h を含む) |
関連項目
IRequestCallbackCancel の
IWDFIoRequest の