EVT_SERCX_FILECLOSE コールバック関数 (sercx.h)
EvtSerCxFileClose イベント コールバック関数は、シリアル コントローラー デバイスを表すファイル オブジェクトが解放されたことをシリアル コントローラー ドライバーに通知します。
構文
EVT_SERCX_FILECLOSE EvtSercxFileclose;
void EvtSercxFileclose(
[in] WDFDEVICE Device
)
{...}
パラメーター
[in] Device
シリアル コントローラーを表すフレームワーク デバイス オブジェクトへの WDFDEVICE ハンドル。
戻り値
何一つ
備考
この関数は、シリアル コントローラー デバイスを、データの受信と送信の準備ができている状態から削除する必要があります。 割り込みが有効になっている場合、この関数は割り込みを無効にする必要があります。 ファイル オブジェクトの有効期間中にのみ割り当てられたメモリは、この関数または EvtSerCxFileCleanup 関数で割り当てを解除する必要があります。
シリアル コント ローラー ドライバーは、EvtSerCxFileCleanup 関数を実装する場合、シリアル フレームワーク拡張機能 (SerCx) は、EvtSerCxFileClose 関数を呼び出す前に、この関数を呼び出します。 SerCx は、クライアントがシリアル コントローラー デバイスを表すファイル オブジェクトへの最後のハンドルを閉じるときに、EvtSerCxFileCleanup 関数を呼び出します。 この呼び出しの後、ドライバーは I/O 操作の新しい要求を受信しません。 SerCx は、ファイル オブジェクトが解放されたときに、EvtSerCxFileClose 関数を呼び出します。これは、未処理のすべての I/O 要求が完了または取り消された後にのみ発生します。
EvtSerCxFileClose コールバック関数を登録するには、ドライバーは、SerCxInitialize メソッドを呼び出す必要があります。
詳細については、「Framework ファイル オブジェクトの」を参照してください。
例
このコールバックの関数型は、次のように Sercx.h で宣言されています。
typedef VOID
EVT_SERCX_FILECLOSE(
__in WDFDEVICE Device
);
EVT_SERCX_FILECLOSE MyEvtSerCxFileClose;
次に、次のようにコールバック関数を実装します。
VOID
MyEvtSerCxFileClose(
__in WDFDEVICE Device
)
{ ... }
関数宣言の SDV 要件の詳細については、「宣言する関数を宣言する KMDF ドライバーのの関数の役割の種類を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 以降で使用できます。 |
ターゲット プラットフォーム の |
デスクトップ |
ヘッダー | sercx.h |
IRQL | IRQL <= DISPATCH_LEVEL で呼び出されます |
関連項目
EvtSerCxFileCleanup の