HW_PROCESS_SERVICE_REQUEST fungsi panggilan balik (storport.h)
Rutinitas panggilan balik HwStorProcessServiceRequest menerima IRP kontrol perangkat yang berisi permintaan IOCTL_MINIPORT_PROCESS_SERVICE_IRP saat pemanggil, seperti aplikasi mode pengguna atau driver mode kernel, memerlukan operasi "panggilan balik". I/O diselesaikan oleh driver miniport ketika perlu memberi tahu pemanggil sesuatu atau membutuhkan pemanggil untuk melakukan sesuatu.
Sintaks
HW_PROCESS_SERVICE_REQUEST HwProcessServiceRequest;
void HwProcessServiceRequest(
PVOID DeviceExtension,
PVOID Irp
)
{...}
Parameter
DeviceExtension
Penunjuk ke area penyimpanan per adaptor driver miniport virtual.
Irp
Penunjuk ke permintaan I/O.
Nilai kembali
Tidak ada
Keterangan
Nama HwStorProcessServiceRequest adalah teks tempat penampung untuk nama rutin aktual. Prototipe aktual dari rutinitas ini didefinisikan dalam Storport.h sebagai berikut:
typedef
VOID
HW_PROCESS_SERVICE_REQUEST (
_In_ PVOID DeviceExtension,
_In_ PVOID Irp
);
Driver port memanggil rutinitas HwStorProcessServiceRequest driver miniport virtual Storport pada PASSIVE_LEVEL. Driver miniport virtual menyelesaikan IRP dengan memanggil rutinitas StorPortCompleteServiceIrp .
Contoh
Untuk menentukan fungsi panggilan balik HwStorProcessServiceRequest , Anda harus terlebih dahulu memberikan deklarasi fungsi yang mengidentifikasi jenis fungsi panggilan balik yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi panggilan balik untuk pengandar. Mendeklarasikan fungsi menggunakan jenis fungsi panggilan balik membantu Analisis Kode untuk Driver, Pemverifikasi Driver Statis (SDV), dan alat verifikasi lainnya menemukan kesalahan, dan itu adalah persyaratan untuk menulis driver untuk sistem operasi Windows.
Misalnya, untuk menentukan rutinitas panggilan balik HwStorProcessServiceRequest yang diberi nama MyHwProcessServiceRequest, gunakan jenis HW_PROCESS_SERVICE_REQUEST seperti yang ditunjukkan dalam contoh kode ini:
HW_PROCESS_SERVICE_REQUEST MyHwProcessServiceRequest;
Kemudian, terapkan rutinitas panggilan balik Anda sebagai berikut:
_Use_decl_annotations_
VOID
MyHwProcessServiceRequest (
_In_ PVOID DeviceExtension,
_In_ PVOID Irp
);
{
...
}
Jenis fungsi HW_PROCESS_SERVICE_REQUEST ditentukan dalam file header Storport.h. Untuk mengidentifikasi kesalahan secara lebih akurat saat Anda menjalankan alat analisis kode, pastikan untuk menambahkan anotasi Use_decl_annotations ke definisi fungsi Anda. Anotasi Use_decl_annotations memastikan bahwa anotasi yang diterapkan ke jenis fungsi HW_PROCESS_SERVICE_REQUEST dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi Menggunakan Jenis Peran Fungsi untuk Driver Storport. Untuk informasi tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | storport.h (termasuk Storport.h) |