NdisMInitializeWrapper 宏 (ndis.h)

注意 NDIS 5. x 已弃用,由 NDIS 6 取代。 x。 有关新的 NDIS 驱动程序开发,请参阅 从 Windows Vista 开始的网络驱动程序。 有关移植 NDIS 5 的信息。 NDIS 6 的 x 驱动程序。 x,请参阅 将 NDIS 5.x 驱动程序移植到 NDIS 6.0

NdisMInitializeWrapper 通知 NDIS 新的微型端口驱动程序正在初始化。

语法

VOID NdisInitializeWrapper(
  _Out_ PNDIS_HANDLE  NdisWrapperHandle,
  _In_ PVOID SystemSpecific1,
  _In_ PVOID SystemSpecific2,
  _In_ PVOID SystemSpecific3
);

参数

[out] _a

指向调用方提供的变量的指针,其中 NDIS 返回表示自身的句柄。 如果调用 NdisMInitializeWrapper 失败,NDIS 会将 NdisWrapperHandle 处的变量设置为 NULL

[in] _b

指定特定于系统的类型的指针。

对于 Windows 2000 及更高版本的驱动程序,这是指向微型端口驱动程序 DriverEntry 函数的不透明驱动程序对象输入的指针。

[in] _c

指定特定于系统的类型的指针。

对于 Windows 2000 及更高版本的驱动程序,这是指向微型端口驱动程序 DriverEntry 函数的不透明注册表路径输入的指针。

[in] _d

指定特定于系统的类型的指针。

对于 Windows 2000 及更高版本的驱动程序,当微型端口驱动程序调用 NdisMInitializeWrapper 时,此指针应设置为 NULL

返回值

备注

NIC 驱动程序或中间驱动程序必须在调用任何其他 NdisXxx 函数之前调用 NdisMInitializeWrapper 。 通常,此调用是任何 NIC 驱动程序的 DriverEntry 函数的初始操作,该函数调用 NdisMRegisterMiniportNdisIMRegisterLayeredMiniport ,接下来返回的 NdisWrapperHandle 。 NDIS 中间驱动程序还必须从 DriverEntry 函数调用 NdisMInitializeWrapper,然后使用返回的 NdisWrapperHandle 调用 NdisMRegisterMiniportNdisIMRegisterLayeredMiniport

此类驱动程序对 NdisXxx 初始化和配置函数的后续调用必须将 NdisWrapperHandle 作为参数传递。 因此,它是 MiniportInitialize 函数的输入参数。

如果调用 NdisMInitializeWrapper 失败,NDIS 会将 NdisWrapperHandle 处的变量设置为 NULL。 在 NdisMInitializeWrapper 返回后,驱动程序应始终检查此变量的值。 如果值为 NULL,驱动程序应使对 DriverEntry 函数的调用失败。

要求

要求
Header ndis.h
IRQL PASSIVE_LEVEL

另请参阅

初始化微型端口驱动程序

NdisMRegisterMiniport

MiniportInitialize

NdisIMRegisterLayeredMiniport

NdisTerminateWrapper