Fungsi RtlUnicodeStringValidateEx (ntstrsafe.h)

Fungsi RtlUnicodeStringValidateEx memvalidasi konten struktur UNICODE_STRING .

Sintaks

NTSTRSAFEDDI RtlUnicodeStringValidateEx(
  [in] PCUNICODE_STRING SourceString,
  [in] DWORD            dwFlags
);

Parameter

[in] SourceString

Pilihan. Penunjuk ke struktur UNICODE_STRING yang akan divalidasi. Pointer ini bisa NULL, tetapi hanya jika STRSAFE_IGNORE_NULLS diatur dalam dwFlags.

[in] dwFlags

Bendera berikut didefinisikan:

STRSAFE_IGNORE_NULLS

Jika bendera ini diatur, penunjuk sumber bisa NULL. RtlUnicodeStringValidateEx memperlakukan penunjuk buffer sumber NULL seperti string kosong (TEXT("")).

Nilai kembali

RtlUnicodeStringValidateEx mengembalikan salah satu nilai NTSTATUS berikut.

Menampilkan kode Deskripsi
STATUS_SUCCESS
Status keberhasilan ini berarti bahwa fungsi berhasil diselesaikan.
STATUS_INVALID_PARAMETER
Status kesalahan ini berarti bahwa fungsi menerima parameter input yang tidak valid. Untuk informasi selengkapnya, lihat daftar berikut ini.
 

Jika STRSAFE_IGNORE_NULLS tidak diatur dalam dwFlags, RtlUnicodeStringValidateEx mengembalikan nilai STATUS_INVALID_PARAMETER ketika salah satu hal berikut ini terjadi:

  • SourceString->Panjang % sizeof(WCHAR) tidak sama dengan nol.
  • SourceString->MaximumLength % sizeof(WCHAR) tidak sama dengan nol.
  • SourceString->Panjang lebih besar dari SourceString->MaximumLength.
  • SourceString->MaximumLength lebih besar dari NTSTRSAFE_UNICODE_STRING_MAX_CCH * sizeof(WCHAR).
  • SourceString->Buffer sama dengan NULL tetapi SourceString->Length atau SourceString->MaximumLength tidak sama dengan nol.
  • Bendera yang tidak valid ditentukan untuk dwFlags.
Untuk informasi tentang cara menguji nilai NTSTATUS, lihat Menggunakan Nilai NTSTATUS.

Keterangan

Penunjuk SourceString tidak boleh NULL kecuali bendera STRSAFE_IGNORE_NULLS diatur.

Untuk informasi selengkapnya tentang fungsi string aman, lihat Menggunakan Fungsi String Aman.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows XP dengan Paket Layanan 1 (SP1) dan versi Windows yang lebih baru.
Target Platform Desktop
Header ntstrsafe.h (termasuk Ntstrsafe.h)
Pustaka Ntstrsafe.lib
IRQL Bagaimanapun, jika string yang dimanipulasi selalu berada dalam memori, jika tidak, PASSIVE_LEVEL

Lihat juga

RtlUnicodeStringValidate

UNICODE_STRING