Bagikan melalui


struktur BUS_INTERFACE_SWENUM (swenum.h)

Struktur BUS_INTERFACE_SWENUM menjelaskan antarmuka objek enumerator bus beban permintaan.

Sintaksis

typedef struct _BUS_INTERFACE_SWENUM {
  INTERFACE                  Interface;
  PFNREFERENCEDEVICEOBJECT   ReferenceDeviceObject;
  PFNDEREFERENCEDEVICEOBJECT DereferenceDeviceObject;
  PFNQUERYREFERENCESTRING    QueryReferenceString;
} BUS_INTERFACE_SWENUM, *PBUS_INTERFACE_SWENUM;

Anggota

Interface

Menentukan ANTARMUKAyang diekspor.

ReferenceDeviceObject

Pointer ke rutinitas KsReferenceSoftwareBusObject yang disediakan driver.

DereferenceDeviceObject

Pointer ke rutinitas KsDereferenceSoftwareBusObject yang disediakan driver.

QueryReferenceString

Pointer ke rutinitas KsQuerySoftwareBusInterface yang disediakan driver.

Komentar

Driver mendapatkan antarmuka BUS_INTERFACE_SWENUM dengan membuat dan mengirim permintaan IRP_MJ_PNP yang menentukan kode fungsi minor IRP_MN_QUERY_INTERFACE. Untuk melakukan ini, driver harus:

  • Alokasikan dan isi nol struktur BUS_INTERFACE_SWENUM dari kumpulan memori halaman.
  • Buat IRP untuk permintaan antarmuka kueri dan dapatkan lokasi tumpukan berikutnya untuk IRP baru.
  • Di lokasi tumpukan baru, berikan penunjuk ke struktur BUS_INTERFACE_SWENUM baru di Parameters.QueryInterface.Interface anggota.
  • Atur rutinitas penyelesaian dan kirim permintaan ke tumpukan driver.
  • Jika permintaan Anda berhasil, sistem mengisi struktur BUS_INTERFACE_SWENUM yang ditunjukkan oleh parameter .QueryInterface.Interface.

Persyaratan

Syarat Nilai
Header swenum.h (termasuk Swenum.h)