RtlUnicodeStringValidateEx 関数 (ntstrsafe.h)
RtlUnicodeStringValidateEx 関数は、UNICODE_STRING構造体の内容を検証します。
構文
NTSTRSAFEDDI RtlUnicodeStringValidateEx(
[in] PCUNICODE_STRING SourceString,
[in] DWORD dwFlags
);
パラメーター
[in] SourceString
任意。 検証する UNICODE_STRING 構造体へのポインター。 このポインターは NULL にできますが、 STRSAFE_IGNORE_NULLSが dwFlags で設定されている場合にのみ使用できます。
[in] dwFlags
次のフラグが定義されています。
STRSAFE_IGNORE_NULLS
このフラグが設定されている場合、ソース ポインターは NULL にすることができます。 RtlUnicodeStringValidateEx は 、NULL ソース バッファー ポインターを空の文字列 (TEXT("")) のように扱います。
戻り値
RtlUnicodeStringValidateEx は 、次のいずれかの NTSTATUS 値を返します。
リターン コード | 説明 |
---|---|
|
この 成功 状態は、関数が正常に完了したことを意味します。 |
|
この エラー 状態は、関数が無効な入力パラメーターを受け取ったことを意味します。 詳細については、次の一覧を参照してください。 |
STRSAFE_IGNORE_NULLSが dwFlags で設定されていない場合、 RtlUnicodeStringValidateEx は 、次のいずれかが発生したときにSTATUS_INVALID_PARAMETER値を返します。
- SourceString->Length % sizeof(WCHAR) は 0 と等しくありません。
- SourceString->MaximumLength % sizeof(WCHAR) は 0 と等しくありません。
- SourceString->長さがSourceString->MaximumLength より大きい。
- SourceString->MaximumLength が NTSTRSAFE_UNICODE_STRING_MAX_CCH * sizeof(WCHAR) を超えています。
- SourceString->バッファー は NULL と等しくなりますが、 SourceString->Length または SourceString->MaximumLength は 0 と等しくありません。
- dwFlags に無効なフラグが指定されています。
注釈
sourceString ポインターは、STRSAFE_IGNORE_NULLS フラグが設定されていない限り NULL にすることはできません。
安全な文字列関数の詳細については、「安全な文字列関数の 使用」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Service Pack 1 (SP1) 以降のバージョンの Windows XP で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | ntstrsafe.h (Ntstrsafe.h を含む) |
Library | Ntstrsafe.lib |
IRQL | 操作されている文字列が常にメモリ内に存在する場合は 。それ以外の場合は PASSIVE_LEVEL |