Bagikan melalui


PROTOCOL_STATUS_EX fungsi panggilan balik (ndis.h)

Fungsi ProtocolStatusEx menunjukkan perubahan status dari driver atau NDIS tanpa koneksi yang mendasar.

Catatan Anda harus mendeklarasikan fungsi dengan menggunakan jenis PROTOCOL_STATUS_EX . Untuk informasi selengkapnya, lihat bagian Contoh berikut ini.
 

Sintaks

PROTOCOL_STATUS_EX ProtocolStatusEx;

void ProtocolStatusEx(
  [in] NDIS_HANDLE ProtocolBindingContext,
  [in] PNDIS_STATUS_INDICATION StatusIndication
)
{...}

Parameter

[in] ProtocolBindingContext

Handel ke area konteks yang dialokasikan driver protokol. Driver protokol mempertahankan informasi konteks per pengikatan di area konteks ini. Driver menyediakan handel ini ke NDIS ketika driver memanggil fungsi NdisOpenAdapterEx .

[in] StatusIndication

Penunjuk ke struktur NDIS_STATUS_INDICATION yang berisi informasi status.

Nilai kembali

Tidak ada

Keterangan

Panggilan ke ProtocolStatusEx memberi tahu driver protokol tentang perubahan status driver yang mendasar.

Untuk menentukan status tautan, gunakan indikasi status dari driver yang mendasarinya, bukan kueri OID. Indikasi status ini akan meningkatkan performa sistem dan menghindari kemungkinan kondisi balapan.

NDIS memanggil fungsi ProtocolStatusEx dari semua driver protokol terikat ketika driver yang mendasar mengatur ulang NIC. NDIS pertama menentukan kode NDIS_STATUS_RESET_START dan yang lebih baru, ketika operasi reset selesai, NDIS menentukan kode NDIS_STATUS_RESET_END .

NDIS tidak akan menerima permintaan pengiriman dan permintaan OID untuk adaptor miniport saat operasi reset sedang berlangsung, pemberitahuan NDIS_STATUS_RESET_START memperingatkan driver protokol terikat untuk menghentikan permintaan tersebut pada pengikatan yang terpengaruh sampai mereka menerima pemberitahuan NDIS_STATUS_RESET_END yang sesuai.

NDIS memanggil ProtocolStatusEx di IRQL <= DISPATCH_LEVEL.

Contoh

Untuk menentukan fungsi ProtocolStatusEx , Anda harus terlebih dahulu menyediakan deklarasi fungsi yang mengidentifikasi jenis fungsi yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi untuk pengandar. Mendeklarasikan fungsi menggunakan jenis fungsi 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 fungsi ProtocolStatusEx yang diberi nama "MyStatusEx", gunakan jenis PROTOCOL_STATUS_EX seperti yang ditunjukkan dalam contoh kode ini:

PROTOCOL_STATUS_EX MyStatusEx;

Kemudian, terapkan fungsi Anda sebagai berikut:

_Use_decl_annotations_
VOID
 MyStatusEx(
    NDIS_HANDLE  ProtocolBindingContext,
    PNDIS_STATUS_INDICATION  StatusIndication
    )
  {...}

Jenis fungsi PROTOCOL_STATUS_EX didefinisikan dalam file header Ndis.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 PROTOCOL_STATUS_EX dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi dengan Menggunakan Jenis Peran Fungsi untuk Driver NDIS.

Untuk informasi tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung di NDIS 6.0 dan yang lebih baru.
Target Platform Windows
Header ndis.h (termasuk Ndis.h)
IRQL <= DISPATCH_LEVEL

Lihat juga

MiniportResetEx

NDIS_STATUS_INDICATION

NDIS_STATUS_RESET_END

NDIS_STATUS_RESET_START

NdisOpenAdapterEx