Fungsi RtlUnicodeStringCbCatN (ntstrsafe.h)
Fungsi RtlUnicodeStringCbCatN menggabungkan dua string yang terkandung dalam struktur UNICODE_STRING sambil membatasi ukuran string yang disalin.
Sintaks
NTSTRSAFEDDI RtlUnicodeStringCbCatN(
[in, out] PUNICODE_STRING DestinationString,
[in] PCUNICODE_STRING SourceString,
[in] size_t cbToAppend
);
Parameter
[in, out] DestinationString
Penunjuk ke struktur UNICODE_STRING . Struktur ini mencakup buffer yang, pada input, berisi string tujuan tempat string sumber akan digabungkan. Pada output, buffer ini adalah buffer tujuan yang berisi seluruh string yang dihasilkan. String sumber ditambahkan ke akhir string tujuan. Jumlah maksimum byte dalam buffer string struktur adalah NTSTRSAFE_UNICODE_STRING_MAX_CCH * sizeof(WCHAR).
[in] SourceString
Penunjuk ke struktur UNICODE_STRING . Struktur ini mencakup buffer yang berisi string sumber. String ini akan ditambahkan ke akhir string tujuan. Jumlah maksimum byte dalam buffer string struktur adalah NTSTRSAFE_UNICODE_STRING_MAX_CCH * sizeof(WCHAR).
[in] cbToAppend
Jumlah maksimum byte untuk ditambahkan ke string yang dijelaskan parameter DestinationString .
Menampilkan nilai
RtlUnicodeStringCbCatN mengembalikan salah satu nilai NTSTATUS berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Status keberhasilan ini berarti bahwa data sumber ada, string digabungkan tanpa pemotokan, dan buffer tujuan yang dihasilkan dihentikan null. |
|
Status peringatan ini berarti bahwa operasi penggabungan tidak selesai karena ruang buffer yang tidak mencukup. Buffer tujuan berisi versi hasil yang dihentikan dengan null dan dihentikan dari hasil yang dimaksud. |
|
Status kesalahan ini berarti bahwa fungsi menerima parameter input yang tidak valid. Untuk informasi selengkapnya, lihat daftar berikut ini. |
RtlUnicodeStringCbCatN mengembalikan nilai STATUS_INVALID_PARAMETER saat salah satu hal berikut ini terjadi:
- Isi struktur UNICODE_STRING tidak valid.
- Buffer tujuan sudah penuh.
- Penunjuk buffer adalah NULL.
- Panjang buffer tujuan adalah nol, tetapi string sumber panjang bukan nol ada.
- Nilai parameter cbToAppend lebih besar dari NTSTRSAFE_UNICODE_STRING_MAX_CCH * sizeof(WCHAR).
Keterangan
Fungsi RtlUnicodeStringCbCatN menggunakan ukuran buffer tujuan untuk memastikan bahwa operasi penggabungan tidak menulis melewati akhir buffer. Fungsi tidak mengakhiri string yang dihasilkan dengan nilai karakter null (yaitu, dengan nol).
Jika string sumber dan tujuan tumpang tindih, perilaku fungsi tidak terdefinisi.
Pointer SourceString dan DestinationString tidak boleh NULL. Jika Anda perlu menangani nilai penunjuk NULL , gunakan fungsi RtlUnicodeStringCbCatNEx .
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
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk