NdisMDeregisterDevice function (ndis.h)
Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
The NdisMDeregisterDevice function removes from the system a device object that was created with NdisMRegisterDevice. NdisMDeregisterDevice also removes the symbolic link that is associated with this device object.
Syntax
NDIS_STATUS NdisMDeregisterDevice(
[in] NDIS_HANDLE NdisDeviceHandle
);
Parameters
[in] NdisDeviceHandle
Specifies the handle returned by NdisMRegisterDevice that identifies the device object to be deregistered.
Return value
NdisMDeregisterDevice returns NDIS_STATUS_SUCCESS if the device object and its associated symbolic link object are deleted.
Remarks
A driver calls NdisMDeregisterDevice from its Halt or Unload function to deregister a stand-alone device object that it previously created with NdisMRegisterDevice. The driver must call NdisMDeregisterDevice when it is being unloaded or when its DriverEntry routine encounters a fatal initialization error, such as an inability to obtain system resources.
When NdisMRegisterDevice is called, there cannot be any outstanding user-mode open operations on the device object being deleted. If there are, a system error occurs.
- Target platform: Universal
- Version: Not supported for NDIS 6.0 drivers in Windows Vista. Supported for NDIS 5.1 drivers in Windows Vista and Windows XP.
Requirements
Requirement | Value |
---|---|
Header | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |