SerCxInitialize 関数 (sercx.h)

SerCxInitialize メソッドは、このドライバーが関連付けられているデバイス オブジェクトを作成した後、シリアル フレームワーク拡張機能 (SerCx) の初期化を完了します。

構文

NTSTATUS SerCxInitialize(
  [in] WDFDEVICE     FxDevice,
  [in] PSERCX_CONFIG Config
);

パラメーター

[in] FxDevice

シリアル コントローラーを表すフレームワーク デバイス オブジェクトへの WDFDEVICE ハンドル。

[in] Config

SerCx の構成情報を含む呼び出し元によって割り当てられた SERCX_CONFIG 構造体へのポインター。 呼び出し元は、この構造体を初期化するために 、以前に SERCX_CONFIG_INIT 関数を呼び出しました。

戻り値

SerCxInitialize は、成功した場合STATUS_SUCCESSを返します。 エラーの戻り値として考えられるのは、次の状態コードです。

リターン コード 説明
STATUS_INVALID_DEVICE_REQUEST
メソッドが間違った IRQL で呼び出されました。または WDFDEVICE ハンドルが無効です。または FxDevice または Config のいずれかが NULL です。
STATUS_INSUFFICIENT_RESOURCES
システム リソース (通常はメモリ) を割り当てませんでした。

注釈

シリアル コントローラー ドライバーは、関連付けられているデバイス オブジェクトを作成した後、このメソッドを呼び出します。

SerCxInitialize は、コントローラー ドライバーの I/O コールバック関数を SerCx に登録します。 さらに、このメソッドは I/O キューの転送モードを定義します。 呼び出し中に、このメソッドは SerCx に必要なすべての内部構造体を作成します (シリアル コントローラーの I/O キューを含む)。 このメソッドが戻った後、SerCx は I/O を処理する準備が整います。 ただし、コントローラー ドライバーは、 EvtDriverDeviceAdd コールバックから戻る前、または PDO を子リストに追加する前に、コントローラー ハードウェア設定を構成する場合があります。

パラメーターが無効な場合 ( SERCX_CONFIGで説明されているように)、 ドライバー検証ツール はエラーを発生させます。

このルーチンは、デバイスをコミットする前に呼び出す必要があります ( EvtDriverDevice から返す追加または子リストへの PDO の追加)。

要件

要件
サポートされている最小のクライアント Windows 8 以降で使用できます。
対象プラットフォーム ユニバーサル
Header sercx.h
IRQL PASSIVE_LEVEL

こちらもご覧ください

EvtDriverDeviceAdd

SERCX_CONFIG

SERCX_CONFIG_INIT