Membebaskan Port NDIS
Driver miniport Anda harus membebaskan semua port NDIS yang dialokasikan untuk adaptor miniport dalam fungsi MiniportInitializeEx-nya . Ini dapat membebaskan port kapan saja dengan memanggil NdisMFreePort, kecuali untuk dua kasus yang disebutkan di bawah ini.
Driver miniport Anda harus membebaskan semua port yang dialokasikan dalam kasus ini:
- Jika fungsi MiniportInitializeEx driver Anda gagal, fungsi tersebut harus membebaskan semua port yang dialokasikan.
- Jika adaptor miniport dihentikan, fungsi MiniportHaltEx driver Anda harus membebaskan semua port yang dialokasikan.
Driver miniport Anda tidak dapat hanya memanggil NdisMFreePort dalam kasus ini:
- Jika port adalah port default, NDIS membebaskannya secara otomatis, sehingga driver miniport Anda tidak boleh membebaskannya. Jika Anda mencoba membebaskan port default, NdisMFreePort mengembalikan kesalahan NDIS_STATUS_INVALID_PORT.
- Jika port aktif, driver miniport Anda harus menonaktifkannya sebelum memanggil NdisMFreePort.