Fungsi ZwCreateDirectoryObject (wdm.h)
Rutinitas ZwCreateDirectoryObject membuat atau membuka objek direktori objek.
Sintaks
NTSYSAPI NTSTATUS ZwCreateDirectoryObject(
[out] PHANDLE DirectoryHandle,
[in] ACCESS_MASK DesiredAccess,
[in] POBJECT_ATTRIBUTES ObjectAttributes
);
Parameter
[out] DirectoryHandle
Penunjuk ke variabel HANDLE yang menerima handel ke direktori objek.
[in] DesiredAccess
Menentukan nilai ACCESS_MASK yang menentukan akses yang diminta ke objek. Selain hak akses yang ditentukan untuk semua jenis objek (lihat ACCESS_MASK), pemanggil dapat menentukan satu atau beberapa hak akses berikut, yang khusus untuk direktori objek:
bendera ACCESS_MASK | Jenis akses |
---|---|
DIRECTORY_QUERY | Kueri |
DIRECTORY_TRAVERSE | Pencarian nama |
DIRECTORY_CREATE_OBJECT | Pembuatan nama |
DIRECTORY_CREATE_SUBDIRECTORY | Pembuatan subdirektori |
DIRECTORY_ALL_ACCESS | Semua jenis sebelumnya |
[in] ObjectAttributes
Arahkan ke struktur OBJECT_ATTRIBUTES yang berisi atribut objek, yang harus sudah Anda inisialisasi dengan memanggil InitializeObjectAttributes.
Nilai kembali
ZwCreateDirectoryObject mengembalikan nilai NTSTATUS. Kemungkinan nilai yang dikembalikan meliputi:
Keterangan
Setelah handel yang ditunjukkan oleh DirectoryHandle tidak lagi digunakan, driver harus memanggil ZwClose untuk menutupnya.
Jika pemanggil tidak berjalan dalam konteks utas sistem, pemanggil harus memastikan bahwa setiap handel yang dibuatnya adalah handel privat. Jika tidak, handel dapat diakses oleh proses dalam konteks driver yang berjalan. Untuk informasi selengkapnya, lihat Penanganan Objek.
Sistem ini menggunakan direktori objek untuk mengatur jenis objek lain, seperti objek perangkat. Untuk informasi selengkapnya, lihat Direktori Objek.
Sistem tidak menggunakan objek direktori objek untuk mewakili direktori sistem file, yang diwakili sebagai objek file.
Jika panggilan ke fungsi ini terjadi dalam mode pengguna, Anda harus menggunakan nama "NtCreateDirectoryObject" alih-alih "ZwCreateDirectoryObject".
Untuk panggilan dari driver mode kernel, versi NtXxx dan ZwXxx dari rutinItas Windows Native System Services dapat berperilaku berbeda dalam cara mereka menangani dan menginterpretasikan parameter input. Untuk informasi selengkapnya tentang hubungan antara versi NtXxx dan ZwXxx dari rutinitas, lihat Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
Lihat juga
Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli