NDK_FN_CLOSE_OBJECT コールバック関数 (ndkpi.h)
NdkCloseObject (NDK_FN_CLOSE_OBJECT) 関数は、NDK オブジェクトのクローズ要求を開始します。
構文
NDK_FN_CLOSE_OBJECT NdkFnCloseObject;
NTSTATUS NdkFnCloseObject(
[in] NDK_OBJECT_HEADER *pNdkObject,
[in] NDK_FN_CLOSE_COMPLETION CloseCompletion,
[in, optional] PVOID RequestContext
)
{...}
パラメーター
[in] pNdkObject
オブジェクトを閉じるオブジェクト ヘッダー (NDK_OBJECT_HEADER) へのポインター。
[in] CloseCompletion
NdkCloseCompletion close completion コールバック関数 (NDK_FN_CLOSE_COMPLETION) へのポインター。
[in, optional] RequestContext
CloseCompletion パラメーターで指定された NdkCloseCompletion 関数に戻す NDK プロバイダーのコンテキスト値。
戻り値
NdkCloseObject 関数は、次のいずれかの NTSTATUS コードを返します。
リターン コード | 説明 |
---|---|
|
NDK オブジェクトが閉じられます。 プロバイダーは NdkCloseCompletion 関数を呼び出しません。 |
|
要求は保留中です。プロバイダーは NdkCloseCompletion 関数を呼び出して、操作を非同期的に完了します。 クローズ要求は正常に開始されましたが、完了していない可能性があります。 |
|
エラーが発生しました。 |
解説
NDK オブジェクトの各型の関数ディスパッチ テーブルには 、NDK_FN_CLOSE_OBJECT 関数ポインターが含まれています。 閉じる要求は非同期です。 NDK コンシューマーは、クローズ要求が開始された後にオブジェクトにアクセスすることはできません。
NDK プロバイダーは、 NdkCloseCompletion 関数 (NDK_FN_CLOSE_COMPLETION) が、閉じているオブジェクトに対して呼び出される最後のコールバックであることを確認する必要があります。 プロバイダーが NdkCloseCompletion 関数を呼び出す前に、すべての未処理の非同期要求が完了し、進行中のすべてのコールバックが返され、それ以降のコールバックが防止されていることを確認する必要があります。 プロバイダーが NdkCloseCompletion 関数を呼び出した後、プロバイダーは オブジェクトの完了関数または通知コールバック関数を呼び出しません。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートされていません。NDIS 6.30 以降でサポートされています。 |
サポートされている最小のサーバー | Windows Server 2012 |
対象プラットフォーム | Windows |
ヘッダー | ndkpi.h (Ndkpi.h を含む) |
IRQL | <=DISPATCH_LEVEL |