次の方法で共有


EVT_SERCX2_FILEOPEN コールバック関数 (sercx.h)

EvtSerCx2FileOpen イベント コールバック関数は、シリアル フレームワーク拡張機能 (SerCx2) のバージョン 2 によって呼び出され、クライアントがシリアル コントローラー デバイスへの論理接続を開き、この接続を表すファイル オブジェクトが作成されたことをシリアル コントローラー ドライバーに通知します。

構文

EVT_SERCX2_FILEOPEN EvtSercx2Fileopen;

NTSTATUS EvtSercx2Fileopen(
  [in] WDFDEVICE Device
)
{...}

パラメーター

[in] Device

シリアル コントローラーを表すフレームワーク デバイス オブジェクトへの WDFDEVICE ハンドル。 シリアル コントローラー ドライバーは、EvtDriverDeviceAdd コールバック関数でこのオブジェクトを作成しました。 詳細については、「SerCx2InitializeDevice」を参照してください。

戻り値

EvtSerCx2FileOpen 関数は、呼び出しが成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、適切なエラー状態コードが返されます。

備考

シリアル コントローラー ドライバーは、オプションとしてこの関数を実装できます。 実装されている場合、ドライバーは、シリアル コント ローラーのフレームワーク デバイス オブジェクトの初期化を完了する SerCx2InitializeDevice メソッドの呼び出しでこの関数を登録します。 SerCx2 は、クライアント ドライバーがシリアル コントローラー ドライバー スタックへのファイル ハンドルを開いたときに、EvtSerCx2FileOpen 関数を呼び出します。

詳細については、「Framework ファイル オブジェクトの」を参照してください。

EvtSerCx2FileOpen コールバック関数 を定義するには、まず、定義するコールバック関数の型を識別する関数宣言を指定する必要があります。 Windows には、ドライバーのコールバック関数の種類のセットが用意されています。 コールバック関数の種類を使用して関数を宣言すると、ドライバーのコード分析、静的ドライバー検証ツール (SDV)、およびその他の検証ツールを すると、エラーが検出され、Windows オペレーティング システムのドライバーを記述するための要件になります。

たとえば、という名前の MyFileOpen コールバック関数を定義するには、次のコード例に示すように、EVT_SERCX2_FILEOPEN 関数型を使用します。

EVT_SERCX2_FILEOPEN  MyFileOpen;

次に、次のようにコールバック関数を実装します。

_Use_decl_annotations_
NTSTATUS
  MyFileOpen(
    WDFDEVICE  Device
    )
  {...}

EVT_SERCX2_FILEOPEN 関数の型は、Sercx.h ヘッダー ファイルで定義されています。 コード分析ツールの実行時にエラーをより正確に識別するには、Use_decl_annotations 注釈を関数定義に追加してください。 Use_decl_annotations 注釈により、ヘッダー ファイル内の EVT_SERCX2_FILEOPEN 関数型に適用される注釈が確実に使用されます。 関数宣言の要件の詳細については、「KMDF ドライバーの関数ロール型を使用して関数を宣言する」を参照してください。 Use_decl_annotationsの詳細については、「関数の動作に注釈を付ける」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 8.1以降で使用できます。
ターゲット プラットフォーム の デスクトップ
ヘッダー sercx.h
IRQL IRQL <= DISPATCH_LEVEL で呼び出されます。

関連項目

SerCx2InitializeDevice の