NdisAllocateGenericObject 函数 (ndis.h)

没有 NDIS 句柄的组件使用 NdisAllocateGenericObject 函数来分配泛型 NDIS 对象。

语法

PNDIS_GENERIC_OBJECT NdisAllocateGenericObject(
  [optional] PDRIVER_OBJECT DriverObject,
             ULONG          Tag,
             USHORT         Size
);

参数

[optional] DriverObject

要与泛型对象关联的驱动程序对象。 此参数可以为 NULL。

Tag

NDIS 应用于为泛型对象分配内存的内核内存标记。

Size

要为调用方保留的内存量(以字节为单位)。 这不包括 NDIS_GENERIC_OBJECT 结构的大小。 将额外的内存空间用于你自己的目的。 若要访问其他内存,请使用 sizeof (NDIS_GENERIC_OBJECT) 跳过泛型对象结构。

返回值

NdisAllocateGenericObject 返回指向其分配的NDIS_GENERIC_OBJECT的指针。 如果 NDIS 无法创建对象,则返回值为 NULL

注解

NDIS 使用泛型对象来管理由没有 NDIS 句柄的组件分配的资源。 此类组件在某些需要 NDIS 句柄的 NDIS 资源分配 API 中,使用返回的泛型对象指针作为 NDIS 句柄。

NDIS 驱动程序必须调用 NdisFreeGenericObject 函数,以释放使用 NdisAllocateGenericObject 创建的泛型对象。

要求

要求
最低受支持的客户端 在 NDIS 6.0 及更高版本中受支持。
目标平台 通用
标头 ndis.h (包括 Ndis.h)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 符合性规则 Irql_Miscellaneous_Function (ndis) NdisAllocateGenericObject (ndis)

另请参阅

NDIS_GENERIC_OBJECT

NdisFreeGenericObject