struktur IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS (wdm.h)

Struktur IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS berisi konteks koneksi untuk rutinitas layanan interupsi terdaftar (ISR) yang terhubung ke gangguan atau gangguan oleh panggilan sebelumnya ke rutinitas IoConnectInterruptEx .

Sintaks

typedef struct _IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS {
  ULONG Version;
  union {
    PVOID                      Generic;
    PKINTERRUPT                InterruptObject;
    PIO_INTERRUPT_MESSAGE_INFO InterruptMessageTable;
  } ConnectionContext;
} IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS, *PIO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS;

Anggota

Version

Jenis koneksi interupsi yang dijelaskan oleh struktur ini. Anggota ini harus cocok dengan tipe koneksi yang diperoleh pemanggil dari panggilan IoConnectInterruptEx yang menyambungkan interupsi. Berikut ini adalah nilai yang valid untuk anggota ini:

  • CONNECT_FULLY_SPECIFIED
  • CONNECT_LINE_BASED
  • CONNECT_MESSAGE_BASED
  • CONNECT_FULLY_SPECIFIED_GROUP
Untuk informasi selengkapnya, lihat Keterangan.

ConnectionContext

Serikat yang berisi konteks koneksi yang terkait dengan gangguan. Setiap anggota serikat adalah penunjuk ke konteks koneksi dari jenis tertentu. Jika Versi = CONNECT_MESSAGE_BASED, anggota InterruptMessageTable dari serikat ini berisi penunjuk ke struktur IO_INTERRUPT_MESSAGE_INFO . Untuk semua nilai Versi lainnya, anggota InterruptObject dari serikat ini berisi penunjuk ke struktur KINTERRUPT . Gunakan anggota Generik dari serikat ini untuk memperlakukan penunjuk konteks koneksi sebagai nilai PVOID (dan menghindari transmisi).

Untuk informasi selengkapnya, lihat Keterangan.

ConnectionContext.Generic

Penunjuk PVOID ke konteks koneksi.

ConnectionContext.InterruptObject

Penunjuk ke konteks koneksi jenis KINTERRUPT.

ConnectionContext.InterruptMessageTable

Penunjuk ke konteks koneksi jenis IO_INTERRUPT_MESSAGE_INFO.

Keterangan

Struktur ini disediakan sebagai parameter untuk rutinitas IoReportInterruptActive dan IoReportInterruptInactive .

Anggota Versi menunjukkan jenis konteks koneksi yang ditentukan dalam anggota ConnectionContext . Atur anggota ini ke nilai Parameters-Version> yang diperoleh dari panggilan IoConnectInterruptEx yang menghubungkan interupsi.

Jika nilai Parameter-Version> yang diperoleh dari IoConnectInterruptEx CONNECT_FULLY_SPECIFIED atau CONNECT_FULLY_SPECIFIED_GROUP, atur anggota ConnectionContext.InterruptObject dari struktur IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS ke nilai pointer *(Parameters-FullySpecified.InterruptObject>) yang diperoleh dari IoConnectInterruptEx.

Jika nilai Parameters-Version> yang diperoleh dari IoConnectInterruptEx CONNECT_MESSAGE_BASED, atur nilai pointer ConnectionContext.InterruptMessageTable dari struktur IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS ke nilai pointer *(Parameters-MessageBased.ConnectionContext.InterruptMessageTable>) yang diperoleh dari IoConnectInterruptEx.

Jika nilai Parameter-Version> yang diperoleh dari IoConnectInterruptEx CONNECT_LINE_BASED, tetapi pemanggil awalnya mengatur Parameter-Version> ke CONNECT_MESSAGE_BASED, atur anggota ConnectionContext.InterruptObject dari struktur IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS ke nilai pointer *(Parameters-MessageBased.ConnectionContext.InterruptObject>) yang diperoleh dariIoConnectInterruptEx.

Jika nilai Parameter-Version> yang diperoleh dari IoConnectInterruptEx CONNECT_LINE_BASED, dan pemanggil awalnya mengatur Parameter-Version> ke CONNECT_LINE_BASED, atur anggota ConnectionContext.InterruptObject dari struktur IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS ke nilai pointer *(Parameters-LineBased.InterruptObject>) yang diperoleh dari IoConnectInterruptEx.

Persyaratan

Persyaratan Nilai
Header wdm.h (termasuk Wdm.h)

Lihat juga

IoConnectInterruptEx

IoReportInterruptActive

IoReportInterruptInactive