Fungsi RtlInitAnsiString (wdm.h)
Rutinitas RtlInitAnsiString menginisialisasi string karakter ANSI yang dihitung.
NTSYSAPI VOID RtlInitAnsiString(
[out] PANSI_STRING DestinationString,
[in, optional] __drv_aliasesMem PCSZ SourceString
);
[out] DestinationString
Penunjuk ke struktur ANSI_STRING yang akan diinisialisasi.
[in, optional] SourceString
Penunjuk ke string karakter yang dihentikan null. String ini digunakan untuk menginisialisasi string yang dihitung yang ditujukkan oleh DestinationString.
Tidak ada
Rutinitas ini menginisialisasi string karakter yang dihitung.
Rutin menyalin nilai penunjuk SourceString ke anggota Buffer dari struktur ANSI_STRING yang ditujukkan oleh DestinationString. Anggota Panjang struktur ini diatur ke panjang, dalam byte, dari string sumber, tidak termasuk null yang mengakhiri. Anggota MaximumLength dari struktur diatur ke panjang, dalam byte, dari string sumber, termasuk null yang mengakhiri. Jika SourceStringNULL, Panjang dan MaximumLength keduanya diatur ke nol.
RtlInitAnsiString tidak mengubah string sumber yang ditunjukkan oleh SourceString.
Jika string sumber lebih panjang dari MAXUSHORT - 1 byte, RtlInitAnsiString menetapkan anggota Panjang struktur ANSI_STRING yang ditunjukkan oleh DestinationString ke MAXUSHORT - 1, dan mengatur anggota MaximumLength dari struktur ini ke MAXUSHORT. Dalam hal ini, nilai Length and MaximumLength salah mengartikan panjang string sumber yang dihentikan null, dan mengandalkan akurasi nilai-nilai ini berpotensi berbahaya.
Penelepon RtlInitAnsiString dapat berjalan di IRQL <= DISPATCH_LEVEL jika buffer DestinationString tidak dapat dihalangi. Biasanya, penelepon berjalan di IRQL = PASSIVE_LEVEL karena sebagian besar rutinitas String RtlXxx lainnya tidak dapat dipanggil di IRQL > PASSIVE_LEVEL.
Makro RTL_CONSTANT_STRING membuat string atau struktur string Unicode untuk menyimpan string yang dihitung.
STRING RTL_CONSTANT_STRING(
[in] PCSZ SourceString
);
UNICODE_STRING RTL_CONSTANT_STRING(
[in] PCWSTR SourceString
);
RTL_CONSTANT_STRING mengembalikan struktur string atau struktur string Unicode.
Makro RTL_CONSTANT_STRING menggantikan rutinitas RtlInitAnsiString, RtlInitString, dan RtlInitUnicodeString saat meneruskan string konstanta.
Anda dapat menggunakan RTL_CONSTANT_STRING untuk menginisialisasi variabel global.
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Tingkat apa pun (Lihat bagian Keterangan) |