Fungsi IoAllocateDriverObjectExtension (wdm.h)
Rutinitas IoAllocateDriverObjectExtension mengalokasikan area konteks per driver, yang disebut ekstensi objek driver, dan menetapkan pengidentifikasi unik untuk itu.
Sintaks
NTSTATUS IoAllocateDriverObjectExtension(
[in] PDRIVER_OBJECT DriverObject,
[in] PVOID ClientIdentificationAddress,
[in] ULONG DriverObjectExtensionSize,
[out] PVOID *DriverObjectExtension
);
Parameter
[in] DriverObject
Penunjuk ke objek driver tempat area konteks akan dikaitkan.
[in] ClientIdentificationAddress
Menentukan pengidentifikasi unik untuk area konteks yang akan dialokasikan.
[in] DriverObjectExtensionSize
Menentukan panjang, dalam byte, dari area konteks yang akan dialokasikan.
[out] DriverObjectExtension
Pointer ke, setelah selesai, area konteks yang dialokasikan.
Nilai kembali
IoAllocateDriverObjectExtension mengembalikan salah satu kode NTSTATUS berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Menunjukkan bahwa rutinitas mengalokasikan ekstensi dari ukuran yang diminta. |
|
Menunjukkan bahwa memori tidak dapat dialokasikan untuk ekstensi objek driver. |
|
Menunjukkan bahwa ekstensi objek driver dengan ClientIdentificationAddress yang diberikan sudah ada. |
Keterangan
Memori yang dialokasikan oleh sistem untuk ekstensi objek driver adalah penyimpanan residen dan dapat diakses dari IRQL apa pun. Penyimpanan yang dialokasikan secara otomatis dibebaskan oleh manajer I/O saat objek driver dihapus.
Penelepon rutin ini harus memberikan pengidentifikasi unik untuk ClientIdentificationAddress. Untuk mengambil pointer ke area konteks, penelepon meneruskan ClientIdentificationAddress ke IoGetDriverObjectExtension.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia dimulai dengan Windows 2000. |
Target Platform | Universal |
Header | wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_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