NdisIMDeInitializeDeviceInstance function (ndis.h)

The NdisIMDeInitializeDeviceInstance function calls an NDIS intermediate driver's MiniportHaltEx function to tear down the driver's virtual miniport.

Syntax

NDIS_STATUS NdisIMDeInitializeDeviceInstance(
  [in] NDIS_HANDLE NdisMiniportHandle
);

Parameters

[in] NdisMiniportHandle

The handle that NDIS supplied to the MiniportInitializeEx function.

Return value

NdisIMDeInitializeDeviceInstance returns NDIS_STATUS_SUCCESS if the NIC has been torn down. Otherwise, it can return NDIS_STATUS_FAILURE if the given NdisMiniportHandle is invalid.

Remarks

For NDIS intermediate drivers, NdisIMDeInitializeDeviceInstance is the reciprocal of the NdisIMInitializeDeviceInstanceEx function. Such a driver usually calls NdisIMDeInitializeDeviceInstance from its ProtocolUnbindAdapterEx function, when the underlying miniport adapter to which it was bound is being removed from the system, possibly because it is being reconfigured.

The call to NdisIMDeInitializeDeviceInstance causes an NDIS call to the intermediate driver's MiniportHaltEx function after NDIS has told all higher level protocol drivers that had bound themselves to the intermediate's virtual miniport that they must unbind.

Requirements

Requirement Value
Minimum supported client Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisIMDeInitializeDeviceInstance (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisIMDeInitializeDeviceInstance (NDIS 5.1)) in Windows XP.
Target Platform Desktop
Header ndis.h (include Ndis.h)
Library Ndis.lib
IRQL PASSIVE_LEVEL
DDI compliance rules Irql_IM_Function(ndis)

See also

MiniportHaltEx

NdisIMInitializeDeviceInstanceEx

ProtocolUnbindAdapterEx