停止驱动程序堆栈

如果删除了设备,NDIS 将停止驱动程序堆栈。 驱动程序堆栈停止操作继续如下:

  1. NDIS 暂停驱动程序堆栈。 有关暂停驱动程序堆栈的详细信息,请参阅 暂停驱动程序堆栈

  2. NDIS 调用协议驱动程序的 ProtocolUnbindAdapterEx 函数。

    绑定进入“正在关闭”状态。 完成未完成的 OID 和发送请求并返回所有接收数据后,绑定将进入“未绑定”状态。

  3. NDIS 分离所有筛选器模块,从堆栈的顶部开始,向下推进到微型端口驱动程序。

    在 NDIS 调用筛选器驱动程序的 FilterDetach 函数并且筛选器驱动程序释放筛选器模块的所有资源后,筛选器模块将处于“分离”状态。

  4. NDIS 停止微型端口适配器。

    在 NDIS 调用微型端口驱动程序的 MiniportHaltEx 函数后,微型端口驱动程序将释放微型端口适配器的所有资源,并且微型端口适配器处于“已停止”状态。

  5. 如果分离了筛选器驱动程序的所有模块,则系统可以卸载筛选器驱动程序。

  6. 如果微型端口驱动程序管理的所有微型端口适配器已停止,则系统可以卸载微型端口驱动程序。