次の方法で共有


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 完了コールバック関数 (NDK_FN_CLOSE_COMPLETION) へのポインター。

[in, optional] RequestContext

CloseCompletion パラメーターで指定された NdkCloseCompletion 関数に戻す NDK プロバイダーのコンテキスト値。

戻り値

NdkCloseObject 関数は、次のいずれかの NTSTATUS コードを返します。

リターン コード 形容
STATUS_SUCCESS
NDK オブジェクトが閉じられます。 プロバイダーは、NdkCloseCompletion 関数を呼び出しません。
STATUS_PENDING
要求は保留中です。プロバイダーは NdkCloseCompletion 関数を呼び出して、操作を非同期的に完了します。 close 要求は正常に開始されましたが、完了していない可能性があります。
その他の状態コードの
エラーが発生しました。

備考

NDK オブジェクトの各型の関数ディスパッチ テーブルには、NDK_FN_CLOSE_OBJECT 関数ポインターが含まれています。 閉じる要求は非同期です。 NDK コンシューマーは、クローズ要求の開始後にオブジェクトにアクセスしてはなりません。

NDK プロバイダーは、NdkCloseCompletion 関数 (NDK_FN_CLOSE_COMPLETION) が、閉じているオブジェクトに対して呼び出された最後のコールバックであることを確認する必要があります。 プロバイダーは、NdkCloseCompletion 関数を呼び出す前に、未処理のすべての非同期要求が完了し、進行中のすべてのコールバックが返され、それ以降のコールバックが防止されていることを確認する必要があります。 プロバイダーが NdkCloseCompletion 関数を呼び出した後、プロバイダーはオブジェクトの完了関数または通知コールバック関数を呼び出しません。

必要条件

要件 価値
サポートされる最小クライアント サポートされていません。NDIS 6.30 以降でサポートされています。
サポートされる最小サーバー Windows Server 2012
ターゲット プラットフォーム ウィンドウズ
ヘッダー ndkpi.h (Ndkpi.h を含む)
IRQL <=DISPATCH_LEVEL

関連項目

NDKPI オブジェクトの有効期間の要件

NDK_CONNECTOR_DISPATCH

NDK_CQ_DISPATCH

NDK_FN_CLOSE_COMPLETION

NDK_OBJECT_HEADER