WdmlibRtlInitUnicodeStringEx 関数 (wdmsec.h)
WdmlibRtlInitUnicodeStringEx 関数は、Unicode 文字のカウント文字列を初期化します。
構文
NTSTATUS WdmlibRtlInitUnicodeStringEx(
[out] PUNICODE_STRING DestinationString,
[in, optional] PCWSTR SourceString
);
パラメーター
[out] DestinationString
初期化する UNICODE_STRING 構造体へのポインター。
[in, optional] SourceString
null で終わるワイド文字列へのポインター。 この文字列は、 DestinationString が指すカウントされた文字列を初期化するために使用されます。
戻り値
WdmlibRtlInitUnicodeStringEx は 成功した場合、STATUS_SUCCESSを返します。それ以外の場合、メソッドは他の NTSTATUS 値を返す可能性があります。
注釈
ルーチンは、SourceString ポインター値を DestinationString が指すUNICODE_STRING構造体の Buffer メンバーにコピーします。 この構造体の Length メンバーは、終端の null を除くソース文字列の長さ (バイト単位) に設定されます。 構造体の MaximumLength メンバーは、終端の null を含むソース文字列の長さ (バイト単位) に設定されます。 SourceString が NULL の場合、Length と MaximumLength の両方が 0 に設定されます。
WdmlibRtlInitUnicodeStringEx は 、SourceString が指すソース文字列を変更しません。
注意
ソース文字列が MAX_USTRING - 1 バイトより長い場合、WdmlibRtlInitUnicodeStringEx は DestinationString が指すUNICODE_STRING構造体の Length メンバーを MAX_USTRING - 2 に設定し、この構造体の MaximumLength メンバーをMAX_USTRINGに設定します。 この場合、 Length と MaximumLength の値は null で終わるソース文字列の長さを誤って表し、これらの値の精度に依存することは危険な可能性があります。
DestinationString バッファーがページ不可能な場合、WdmlibRtlInitUnicodeStringEx の呼び出し元は IRQL <= DISPATCH_LEVELで実行できます。 通常、呼び出し元は IRQL = PASSIVE_LEVELで実行されます。これは、他のほとんどの RtlXxx文字列 ルーチンを IRQL > PASSIVE_LEVELで呼び出すことができないためです。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | wdmsec.h (Wdmsec.h、Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | 「解説」を参照してください。 |