PHW_RECEIVE_DEVICE_SRB fungsi panggilan balik (strmini.h)

Rutinitas yang disediakan minidriver menangani permintaan driver kelas yang berlaku untuk driver secara keseluruhan, seperti menginisialisasi perangkat, atau membuka aliran di dalam perangkat.

Sintaks

PHW_RECEIVE_DEVICE_SRB PhwReceiveDeviceSrb;

void PhwReceiveDeviceSrb(
  [in] IN PHW_STREAM_REQUEST_BLOCK SRB
)
{...}

Parameter

[in] SRB

Penunjuk ke blok permintaan aliran.

Nilai kembali

Tidak ada

Keterangan

Minidriver menentukan rutinitas ini di anggota HwReceivePacket dari struktur HW_INITIALIZATION_DATA-nya . Minidriver meneruskan struktur ini ke driver kelas ketika mendaftarkan dirinya dengan memanggil StreamClassRegisterMinidriver.

StrMiniReceiveDevicePacket harus menangani permintaan driver kelas yang berlaku untuk driver secara keseluruhan, seperti menginisialisasi perangkat, atau membuka aliran dalam perangkat. Driver kelas meneruskan informasinya dalam bentuk pointer ke blok permintaan stream. Driver kelas mengisi beberapa entri di blok permintaan aliran. Minidriver, setelah menyelesaikan rutinitas, harus mengisi informasi tambahan yang akan digunakan driver kelas untuk melanjutkan pemrosesan.

Setelah menyelesaikan penanganan permintaan, minidriver meneruskan struktur kembali ke driver kelas dengan memanggil StreamClassDeviceNotification(DeviceRequestComplete, pSRB-HwDeviceExtension>, pSRB).

Lihat informasi tentang kode SRB yang relevan di Referensi SRB Kelas Stream.

Ketika minidriver menyelesaikan pemrosesan permintaannya, itu memasuki status pengembalian operasi dalam pSrb-Status>. Minidriver harus memasukkan STATUS_SUCCESS untuk pemrosesan normal yang berhasil. Jika minidriver tidak mendukung nilai Perintah tersebut, itu harus mengatur pSrb-Status> ke STATUS_NOT_IMPLEMENTED. Jika ada kesalahan perangkat keras perangkat yang mencegah minidriver menyelesaikan permintaan, itu harus mengatur status pSrb> ke STATUS_IO_DEVICE_ERROR. Kode kesalahan lain yang digunakan rutin dalam keadaan tertentu tercantum di atas dengan kode Perintah tertentu.

Perhatikan bahwa driver kelas meneruskan permintaan baca dan tulis ke rutinitas StrMiniReceiveStreamDataPacket .

Minidriver mendaftarkan rutinitas StrMiniReceiveStreamControlPacket sebagai berikut: Ketika driver kelas membuka aliran, ia melewati blok permintaan SRB_OPEN_STREAM ke rutinitas StrMiniReceiveDevicePacket minidriver. Anggota StreamObject dari paket permintaan menunjuk ke HW_STREAM_OBJECT. Minidriver menetapkan anggota ReceiveControlPacket dari struktur yang ditunjukkan oleh StreamObject ke rutinitas StrMiniReceiveControlPacket minidriver.

Setelah menyelesaikan penanganan permintaan, minidriver meneruskan struktur kembali ke driver kelas dengan memanggil StreamClassStreamNotification(StreamRequestComplete, pSRB-StreamObject>, pSRB).

Lihat informasi tentang kode SRB yang relevan di Referensi SRB Kelas Stream.

Ketika minidriver menyelesaikan pemrosesan permintaannya, itu memasuki status pengembalian operasi dalam pSrb-Status>. Minidriver harus memasukkan STATUS_SUCCESS untuk pemrosesan normal yang berhasil. Jika minidriver tidak mendukung nilai Perintah tersebut, itu harus mengatur pSrb-Status> ke STATUS_NOT_IMPLEMENTED. Jika ada kesalahan perangkat keras perangkat yang mencegah minidriver menyelesaikan permintaan, itu harus mengatur status pSrb> ke STATUS_IO_DEVICE_ERROR. Kode kesalahan lain yang digunakan rutin dalam keadaan tertentu tercantum di atas dengan kode Perintah tertentu.

Driver kelas stream memanggil rutinitas StrMiniReceiveStreamDataPacket minidriver untuk menangani permintaan baca dan tulis untuk aliran tertentu.

Minidriver mendaftarkan rutinitas StrMiniReceiveStreamDataPacket sebagai berikut: Ketika driver kelas membuka aliran, ia melewati blok permintaan SRB_OPEN_STREAM ke rutinitas StrMiniReceiveDevicePacket minidriver. StreamObject paket permintaan menunjuk ke HW_STREAM_OBJECT. Minidriver menetapkan anggota ReceiveDataPacket dari struktur yang diacu oleh pSrb-StreamObject> ke rutinitas StrMiniReceiveDataPacket minidriver.

Setelah menyelesaikan penanganan permintaan, minidriver meneruskan struktur kembali ke driver kelas dengan memanggil StreamClassStreamNotification(StreamRequestComplete, pSRB-StreamObject>, pSRB).

Lihat informasi tentang kode SRB yang relevan di Referensi SRB Kelas Stream.

Ketika minidriver menyelesaikan pemrosesan permintaannya, itu memasuki status pengembalian operasi dalam pSrb-Status>. Minidriver harus memasukkan STATUS_SUCCESS untuk pemrosesan normal yang berhasil. Jika minidriver tidak mendukung nilai Perintah tersebut, itu harus mengatur pSrb-Status> ke STATUS_NOT_IMPLEMENTED. Jika ada kesalahan perangkat keras perangkat yang mencegah minidriver menyelesaikan permintaan, itu harus mengatur status pSrb> ke STATUS_IO_DEVICE_ERROR. Kode kesalahan lain yang digunakan rutin dalam keadaan tertentu tercantum di atas dengan kode Perintah tertentu.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header strmini.h (termasuk Strmini.h)