Fungsi NdisClCloseAddressFamily (ndis.h)

NdisClCloseAddressFamily merilis hubungan antara protokol klien dan AF terdaftar manajer panggilan atau driver MCM untuk NIC tertentu yang terikat dengan klien.

Sintaks

NDIS_STATUS NdisClCloseAddressFamily(
  [in] NDIS_HANDLE NdisAfHandle
);

Parameter

[in] NdisAfHandle

Menentukan handel yang disediakan NDIS yang dikembalikan oleh NdisClOpenAddressFamilyEx.

Mengembalikan nilai

Kapan NdisClCloseAddressFamily mengembalikan apa pun selain NDIS_STATUS_PENDING, klien harus melakukan panggilan internal ke Fungsi ProtocolClCloseAfComplete . Jika tidak, NDIS memanggil klien Fungsi ProtocolClCloseAfComplete ketika operasi ini selesai.

Jika NdisClCloseAddressFamily mengembalikan NDIS_STATUS_PENDING, klien yang menunggu Fungsi ProtocolClCloseAfComplete yang akan dipanggil tidak boleh memblokir utas saat ini karena ini dapat menyebabkan kebuntuan. Ini sangat penting ketika klien memanggil NdisClCloseAddressFamily dalam konteks penanganan Permintaan NdisCmNotifyCloseAddressFamily . Dalam hal ini, manajer panggilan mungkin tidak menutup keluarga alamat sampai setelah klien kembali dari menangani permintaan NdisCmNotifyCloseAddressFamily . Jika klien memblokir utas saat ini, klien tidak akan pernah menyelesaikan penanganan permintaan NdisCmNotifyCloseAddressFamily , sehingga menyebabkan kebuntuan.

Keterangan

Klien biasanya memanggil NdisClCloseAddressFamily dari
Fungsi ProtocolUnbindAdapterEx , setelah menutup semua VC klien yang terbuka pada pengikatan dengan panggilan ke NdisClCloseCall dan/atau NdisClDeregisterSap. Klien juga dapat memanggil NdisClCloseAddressFamily dalam konteks pemrosesan Permintaan NdisCmNotifyCloseAddressFamily .

NDIS memanggil klien ProtocolUnbindAdapterEx berfungsi setiap kali NIC yang mendasar yang terikat klien tersebut dihapus dari komputer atau sedang dikonfigurasi ulang. Konfigurasi ulang PnP dari driver miniport yang mendasar menyebabkan manajer panggilan atau driver MCM mendaftarkan ulang keluarga alamat yang didukungnya selama NIC tersebut. Ini, pada gilirannya, menyebabkan panggilan berikutnya ke klien Fungsi ProtocolCoAfRegisterNotify . Dalam salah satu skenario, klien Fungsi ProtocolUnbindAdapterEx harus memanggil NdisClCloseAddressFamily dengan NdisAfHandle yang luar biasa yang saat ini digunakannya tergantung pada driver miniport yang mendasar.

Sebagai pedoman umum, klien harus merilis semua sumber daya yang dialokasikan untuk komunikasi berorientasi koneksi melalui driver miniport sebelum Fungsi ProtocolUnbindAdapterEx memanggil NdisCloseAdapterEx.

NdisAfHandle yang diteruskan ke NdisClCloseAddressFamily menjadi tidak valid untuk klien segera setelah panggilan ini terjadi.

Sebelum panggilan ke NdisClCloseAddressFamily, klien dapat menggunakan NdisAfHandle saat AF terbuka atau sementara Operasi ProtocolClNotifyCloseAf tertunda. Jika Fungsi ProtocolClNotifyCloseAf mengembalikan NDIS_STATUS_PENDING, gunakan handel di Panggilan NdisClNotifyCloseAddressFamilyComplete setelah operasi penutupan selesai.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung untuk driver NDIS 6.0 dan NDIS 5.1 (lihat NdisClCloseAddressFamily (NDIS 5.1)) di Windows Vista. Didukung untuk driver NDIS 5.1 (lihat NdisClCloseAddressFamily (NDIS 5.1)) di Windows XP.
Target Platform Desktop
Header ndis.h (termasuk Ndis.h)
Pustaka Ndis.lib
IRQL <= DISPATCH_LEVEL
Aturan kepatuhan DDI Irql_Protocol_Driver_Function(ndis)

Lihat juga

NdisClCloseCall

NdisClDeregisterSap

NdisClOpenAddressFamilyEx

ProtocolClCloseAfComplete

ProtocolCmCloseAf

ProtocolCoAfRegisterNotify

ProtocolUnbindAdapterEx