Bagikan melalui


Fungsi KsReadFile (ks.h)

Fungsi KsReadFile melakukan bacaan terhadap objek file yang ditentukan. Diasumsikan pemanggil menserialisasikan akses ke file untuk operasi terhadap objek file FO_SYNCHRONOUS_IO. Fungsi ini mencoba menggunakan FastIoDispatch jika memungkinkan, atau menghasilkan permintaan baca terhadap objek perangkat. Semua statistik yang relevan diperbarui.

Sintaksis

KSDDKAPI NTSTATUS KsReadFile(
  [in]           PFILE_OBJECT     FileObject,
  [in, optional] PKEVENT          Event,
  [in, optional] PVOID            PortContext,
  [out]          PIO_STATUS_BLOCK IoStatusBlock,
  [out]          PVOID            Buffer,
  [in]           ULONG            Length,
  [in, optional] ULONG            Key,
  [in]           KPROCESSOR_MODE  RequestorMode
);

Parameter

[in] FileObject

Menentukan objek file untuk melakukan pembacaan terhadap.

[in, optional] Event

Secara opsional berisi peristiwa yang akan digunakan dalam bacaan. Jika tidak ada peristiwa yang diteruskan, panggilan diasumsikan berada di objek file sinkron. Jika tidak, pemanggil sedang menunggu peristiwa objek file, atau mungkin selesai secara asinkron. Jika file telah dibuka untuk I/O sinkron, ini harus NULL. Jika variabel digunakan, itu harus merupakan peristiwa yang dialokasikan oleh manajer objek.

[in, optional] PortContext

Secara opsional berisi informasi konteks untuk port penyelesaian.

[out] IoStatusBlock

Menentukan alamat tempat informasi status akan dikembalikan. Ini selalu diasumsikan sebagai alamat yang valid, terlepas dari mode pemohon.

[out] Buffer

Menentukan buffer tempat data dibaca. Jika buffer perlu diperiksa dan dikunci, handler pengecualian digunakan, bersama dengan RequesterMode.

[in] Length

Menentukan ukuran buffer yang diteruskan.

[in, optional] Key

Secara opsional berisi kunci, atau nol jika tidak ada

[in] RequestorMode

Menunjukkan mode prosesor untuk ditempatkan di IRP baca jika perlu dibuat. Selain itu, ini digunakan jika buffer perlu diselimuti dan dikunci. Variabel ini juga menentukan apakah panggilan I/O cepat dapat dilakukan. Jika mode pemohon bukan KernelMode, tetapi mode sebelumnya adalah, maka I/O cepat tidak dapat digunakan.

Mengembalikan nilai

Fungsi KsReadFile mengembalikan STATUS_SUCCESS jika berhasil, STATUS_PENDING jika tindakan tertunda, atau mengembalikan kesalahan baca jika tidak berhasil.

Persyaratan

Syarat Nilai
Platform Target Universal
Header ks.h (termasuk Ks.h)
Pustaka Ks.lib