SerCxDeviceInitConfig 関数 (sercx.h)
SerCxDeviceInitConfig メソッドは、シリアル フレームワーク拡張機能 (SerCx) を作成しているフレームワーク デバイス オブジェクト (FDO または PDO) の I/O パイプラインにアタッチするために、シリアル コントローラー ドライバーによって呼び出されます。
構文
NTSTATUS SerCxDeviceInitConfig(
[in, out] PWDFDEVICE_INIT DeviceInit
);
パラメーター
[in, out] DeviceInit
構成する WDFDEVICE_INIT 構造体へのポインター。
戻り値
呼び出しが成功した場合、SerCxDeviceInitConfig はSTATUS_SUCCESSを返します。 エラーの戻り値として考えられるのは、次の状態コードです。
リターン コード | 説明 |
---|---|
|
システム リソース (通常はメモリ) を割り当てませんでした。 |
注釈
このメソッドは、SerCx の構成情報を、作成するフレームワーク デバイス オブジェクト (PDO または FDO) の WDFDEVICE_INIT 構造体に関連付けます。 WdfDeviceCreate メソッドを呼び出してデバイス オブジェクトを作成する前に、SerCxDeviceInitConfig を呼び出します。
コントローラー ドライバーの EvtDriverDeviceAdd コールバック関数は、初期化 されたWDFDEVICE_INIT 構造体へのポインターを入力パラメーターとして受け取ります。
SerCx は、シリアル コントローラー ドライバーが必要に応じてオーバーライドできる既定のセキュリティ記述子を設定します。 たとえば、この既定のセキュリティ記述子を使用すると、ユーザー モード ドライバーは、シリアル コントローラー上のポートに接続されている周辺機器に I/O 要求を送信できます。 セキュリティ記述子でこの設定を変更するには、シリアル コントローラー ドライバーは WdfDeviceInitAssignSDDLString メソッドを呼び出すことができます。 この呼び出しは 、SerCxDeviceInitConfig 呼び出しの後、 WdfDeviceCreate メソッドの呼び出しの前に行う必要があります。
例
次のコード例では、コントローラー ドライバーの EvtDriverDeviceAdd コールバック関数は、初期化された WDFDEVICE_INIT 構造体を SerCxDeviceInitConfig メソッドに渡します。 SerCxDeviceInitConfig の呼び出しは、シリアル コントローラー デバイス (UART) の FDO を作成する WdfDeviceCreate 呼び出しの前に行う必要があります。
//
// FxDeviceInit is a pointer to an initialized WDFDEVICE_INIT structure.
// Drivers receive a pointer to this structure as an input parameter to an
// EvtDriverDeviceAdd callback function, or as a return value from the
// WdfControlDeviceInitAllocate method.
//
status = SerCxDeviceInitConfig(FxDeviceInit);
if (!NT_SUCCESS(status))
{
return status;
}
//
// Set WDF and SerCx device-level configuration options.
//
...
//
// Call the WdfDeviceCreate method.
//
...
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | sercx.h |
IRQL | PASSIVE_LEVEL |