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
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk