Fungsi ZwLockFile (ntifs.h)
Rutinitas ZwLockFile meminta kunci rentang byte untuk file yang ditentukan.
Sintaks
NTSYSAPI NTSTATUS ZwLockFile(
[in] HANDLE FileHandle,
[in, optional] HANDLE Event,
[in, optional] PIO_APC_ROUTINE ApcRoutine,
[in, optional] PVOID ApcContext,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[in] PLARGE_INTEGER ByteOffset,
[in] PLARGE_INTEGER Length,
[in] ULONG Key,
[in] BOOLEAN FailImmediately,
[in] BOOLEAN ExclusiveLock
);
Parameter
[in] FileHandle
Handel untuk file tempat kunci rentang byte diminta.
[in, optional] Event
Handel ke peristiwa yang dibuat penelepon. Jika bukan NULL, penelepon ditempatkan ke dalam status tunggu hingga operasi berhasil, pada saat itu peristiwa diatur ke dalam status Sinyal.
[in, optional] ApcRoutine
Penunjuk ke rutinitas APC yang disediakan penelepon yang dijalankan setelah operasi selesai. Bisa NULL.
[in, optional] ApcContext
Penunjuk ke konteks yang ditentukan penelepon untuk rutinitas APC. Nilai ini diteruskan ke rutinitas APC saat dijalankan. Bisa NULL.
[out] IoStatusBlock
Penunjuk ke struktur IO_STATUS_BLOCK yang berisi status akhir.
[in] ByteOffset
Penunjuk ke variabel yang menentukan offset byte awal dari rentang yang akan dikunci.
[in] Length
Penunjuk ke variabel yang menentukan panjang dalam byte rentang untuk dikunci.
[in] Key
Nilai yang ditetapkan penelepon yang digunakan untuk menjelaskan grup kunci terkait. Nilai ini harus diatur ke nol.
[in] FailImmediately
Jika TRUE, segera kembali jika file tidak dapat dikunci. Jika FALSE, tunggu hingga permintaan kunci diberikan.
[in] ExclusiveLock
Jika TRUE, kunci rentang byte bersifat eksklusif; jika tidak, kunci bersama.
Mengembalikan nilai
Rutinitas ZwLockFile mengembalikan STATUS_SUCCESS atau nilai NTSTATUS kesalahan yang sesuai seperti salah satu hal berikut ini.
Kode kesalahan | Deskripsi |
---|---|
STATUS_INSUFFICIENT_RESOURCES | Sumber daya tidak mencukupi ada untuk memberikan kunci rentang byte untuk file yang ditentukan. |
STATUS_LOCK_NOT_GRANTED | Kunci rentang byte tidak diberikan untuk file yang ditentukan. |
Keterangan
Pemanggil ZwLockFile harus berjalan di IRQL = PASSIVE_LEVEL dan dengan APC kernel khusus diaktifkan.
Catatan
Jika panggilan ke fungsi ZwLockFile terjadi dalam mode pengguna, Anda harus menggunakan nama "NtLockFile" alih-alih "ZwLockFile".
Untuk panggilan dari driver mode kernel, versi NtXxx dan ZwXxx dari rutinitas Windows Native System Services dapat berperilaku berbeda dalam cara mereka menangani dan menafsirkan 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 | Windows 7 |
Target Platform | Universal |
Header | ntifs.h (termasuk Ntifs.h, FltKernel.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (lihat bagian Keterangan) |
Aturan kepatuhan DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
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