Fungsi NtGetNotificationResourceManager (wdm.h)
Rutinitas ZwGetNotificationResourceManager mengambil pemberitahuan transaksi berikutnya dari antrean pemberitahuan manajer sumber daya tertentu.
Sintaks
__kernel_entry NTSYSCALLAPI NTSTATUS NtGetNotificationResourceManager(
[in] HANDLE ResourceManagerHandle,
[out] PTRANSACTION_NOTIFICATION TransactionNotification,
[in] ULONG NotificationLength,
[in] PLARGE_INTEGER Timeout,
[out, optional] PULONG ReturnLength,
[in] ULONG Asynchronous,
[in, optional] ULONG_PTR AsynchronousContext
);
Parameter
[in] ResourceManagerHandle
Handel ke objek resource manager yang diperoleh oleh panggilan sebelumnya ke ZwCreateResourceManager atau ZwOpenResourceManager. Handel harus memiliki akses RESOURCEMANAGER_GET_NOTIFICATION ke objek.
[out] TransactionNotification
Penunjuk ke buffer yang dialokasikan pemanggil yang menerima informasi tentang pemberitahuan yang diambil. Buffer harus cukup besar untuk berisi struktur TRANSACTION_NOTIFICATION ditambah argumen khusus pemberitahuan tambahan.
[in] NotificationLength
Panjangnya, dalam byte, dari buffer yang dituju parameter TransactionNotification .
[in] Timeout
Penunjuk ke nilai yang menentukan waktu relatif atau absolut, dalam satuan 100 nanodetik. Penunjuk ini bersifat opsional dan dapat berupa NULL.
Jika penunjuk ADALAH NULL, ZwGetNotificationResourceManager tidak mengembalikan hingga pemberitahuan transaksi tersedia. Jika nilai waktu ditentukan, ZwGetNotificationResourceManager akan kembali saat pemberitahuan tersedia atau setelah waktu yang ditentukan berlalu, mana yang lebih dulu.
Nilai negatif menentukan waktu yang relatif terhadap waktu sistem saat ini. Misalnya, nilai waktu relatif lima detik menyebabkan ZwGetNotificationResourceManager kehabisan waktu lima detik setelah dipanggil.
Nilai positif menentukan waktu absolut, yang sebenarnya relatif terhadap 00:00, 1 Januari 1601. Jika nilai waktu absolut ditentukan, sistem operasi menambahkan nilai waktu absolut ke nilai waktu yang mewakili 00:00, 1 Januari 1601.
Jika pemanggil menentukan nilai nol (bukan penunjuk NULL ), ZwGetNotificationResourceManager segera kembali, apakah pemberitahuan tersedia atau tidak.
[out, optional] ReturnLength
Penunjuk opsional ke variabel. Jika pointer ini bukan NULL, dan jika nilai parameter NotificationLength terlalu kecil, ZwGetNotificationResourceManager menyediakan panjang yang diperlukan dalam variabel dan mengembalikan STATUS_BUFFER_TOO_SMALL.
[in] Asynchronous
Nilai ULONG yang harus nol. ZwGetNotificationResourceManager tidak mendukung pemberitahuan asinkron. Gunakan TmEnableCallbacks untuk mengaktifkan pemberitahuan asinkron.
[in, optional] AsynchronousContext
Penunjuk ke nilai ULONG. Penunjuk ini harus NULL.
Nilai kembali
ZwGetNotificationResourceManager mengembalikan STATUS_SUCCESS jika operasi berhasil dan pemberitahuan tersedia. Jika tidak, rutinitas ini mungkin mengembalikan salah satu nilai berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Interval waktu habis yang ditentukan Timeout berlalu sebelum pemberitahuan tersedia. |
|
Handel yang ditentukan bukan handel ke objek resource manager. |
|
Handel objek tidak valid. |
|
Pemanggil tidak memiliki akses yang sesuai ke objek manajer sumber daya. |
|
Nilai parameter NotificationLength terlalu kecil. |
Rutinitas mungkin mengembalikan nilai NTSTATUS lainnya.
Keterangan
Gunakan rutinitas ZwGetNotificationResourceManager untuk mendapatkan pemberitahuan secara sinkron. Gunakan rutinitas TmEnableCallbacks untuk mengaktifkan pemberitahuan asinkron.
Struktur TRANSACTION_NOTIFICATION yang diterima berisi kunci pendaftaran yang ditentukan manajer sumber daya saat disebut ZwCreateEnlistment. Anda dapat menggunakan kunci pendaftaran untuk mengidentifikasi pendaftaran yang berlaku untuk pemberitahuan.
Untuk informasi selengkapnya tentang rutinitas ZwGetNotificationResourceManager, lihat Membuat Resource Manager.
NtGetNotificationResourceManager dan ZwGetNotificationResourceManager adalah dua versi dari rutinitas Windows Native System Services yang sama.
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 |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan versi sistem operasi yang lebih baru. |
Target Platform | Universal |
Header | wdm.h (termasuk Wdm.h, Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | = PASSIVE_LEVEL |
Aturan kepatuhan DDI | HwStorPortProhibitedDDIs, PowerIrpDDis |
Lihat juga
Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli
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