структура NDIS_GENERIC_OBJECT (ndis.h)
Структура NDIS_GENERIC_OBJECT определяет универсальный объект, который программный компонент может использовать для получения дескриптора NDIS.
Синтаксис
typedef struct _NDIS_GENERIC_OBJECT {
NDIS_OBJECT_HEADER Header;
PVOID Caller;
PVOID CallersCaller;
PDRIVER_OBJECT DriverObject;
} NDIS_GENERIC_OBJECT, *PNDIS_GENERIC_OBJECT;
Члены
Header
Структура NDIS_OBJECT_HEADER для универсальной объектной структуры (NDIS_GENERIC_OBJECT). NDIS задает для элемента Type структуры, указанной в заголовке , значение NDIS_OBJECT_TYPE_GENERIC_OBJECT, для элемента Revision — значение NDIS_GENERIC_OBJECT_REVISION_1, а для элемента Size — значение sizeof(NDIS_GENERIC_OBJECT).
Caller
Зарезервировано для NDIS.
CallersCaller
Зарезервировано для NDIS.
DriverObject
Объект драйвера, связанный с универсальным объектом. Если объект драйвера отсутствует, этот элемент имеет значение NULL. Это значение передается в параметре DriverObject объекта Функция NdisAllocateGenericObject .
Комментарии
Программные компоненты, которые еще не имеют дескриптора NDIS, вызывают NdisAllocateGenericObject для создания универсального объекта. Такие компоненты используют дескриптор, полученный из NdisAllocateGenericObject , для выделения ресурсов NDIS.
Параметр Sizeобъекта NdisAllocateGenericObject указывает объем памяти в байтах, который необходимо зарезервировать для вызывающего объекта. NdisAllocateGenericObject добавляет дополнительную память после элементов NDIS_OBJECT_STRUCTURE.
Большинству драйверов NDIS не требуется универсальный объект для получения дескриптора. Драйверы протокола NDIS, промежуточного уровня и минипорта получают дескриптор во время инициализации.
Используйте функцию NdisFreeGenericObject , чтобы освободить универсальный объект, созданный с помощью NdisAllocateGenericObject.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в NDIS 6.0 и более поздних версиях. |
Верхняя часть | ndis.h (включая Ndis.h) |