Поделиться через


OID_GEN_SUPPORTED_GUIDS

В качестве запроса OID_GEN_SUPPORTED_GUIDS OID запрашивает минипорт-драйвер для возврата массива структур типа NDIS_GUID.

сведения о версиях

Windows Vista и более поздних версий Windows
Поддержанный.

драйверы минипорта NDIS 6.0 и более поздних версий
Необязательный.

NDIS 5.1 минипорт драйверов
Необязательный.

Windows XP
Поддержанный.

NDIS 5.1 минипорт драйверов
Необязательный.

Замечания

Каждая структура в массиве указывает сопоставление пользовательского GUID (глобально уникального идентификатора) с пользовательским OID или NDIS_STATUS, который драйвер мини-порта отправляет через функцию NdisMIndicateStatusEx.

Структура NDIS_GUID определяется следующим образом:

typedef struct _NDIS_GUID {
    GUID             Guid;
    union {
        NDIS_OID     Oid;
        NDIS_STATUS  Status;
    };
    ULONG            Size;
    ULONG            Flags;
} NDIS_GUID, *PNDIS_GUID;

Члены этой структуры содержат следующие сведения:

Guid
Указывает настраиваемый GUID, определенный для мини-драйвера.

Oid
Указывает пользовательский OID, с которым карты guid.

состояния
Указывает NDIS_STATUS, с которыми сопоставляется guid guid .

размер
Задает размер в байтах каждого элемента данных в массиве, возвращаемого драйвером минипорта. Если установлен флаг fNDIS_GUID_ANSI_STRING или fNDIS_GUID_NDIS_STRING, размер имеет значение -1. В противном случае размер указывает размер в байтах элемента данных, который представляет GUID. Этот элемент указывается только в том случае, если установлен флаг fNDIS_GUID_ARRAY.

Флаги
Следующие флаги можно объединить оператором OR, чтобы указать, сопоставляется ли GUID с OID или строкой NDIS_STATUS и указывает тип данных, предоставленных для GUID:

fNDIS_GUID_TO_OID
Указывает, что структура NDIS_GUID сопоставляет GUID с OID.

fNDIS_GUID_TO_STATUS
Указывает, что структура NDIS_GUID сопоставляет GUID с строкой NDIS_STATUS.

fNDIS_GUID_ANSI_STRING
Указывает, что строка ANSI, завершаемая значением NULL, предоставляется для GUID.

fNDIS_GUID_UNICODE_STRING
Указывает, что строка Юникода предоставляется для GUID.

fNDIS_GUID_ARRAY
Указывает, что массив элементов данных предоставляется для GUID. Указанный Размер указывает длину каждого элемента данных в массиве.

fNDIS_GUID_ALLOW_READ
При установке указывает, что все пользователи могут использовать этот GUID для получения сведений.

fNDIS_GUID_ALLOW_WRITE
При установке указывает, что все пользователи могут использовать этот GUID для задания сведений.

Примечание По умолчанию пользовательские идентификаторы GUI WMI, предоставляемые мини-драйвером, доступны только пользователям с правами администратора. Пользователь с правами администратора всегда может читать или записывать в пользовательский GUID, если драйвер минипорта поддерживает операцию чтения или записи для этого GUID. Задайте флаги fNDIS_GUID_ALLOW_READ и fNDIS_GUID_ALLOW_WRITE, чтобы разрешить всем пользователям получать доступ к пользовательскому GUID.

Обратите внимание, что все пользовательские идентификаторы GUID, зарегистрированные драйвером мини-порта, должны задавать либо fNDIS_GUID_TO_OID, либо fNDIS_GUID_TO_STATUS (никогда не задавать оба). Все остальные флаги могут быть объединены с помощью оператора OR в соответствии с применимым.

В следующем примере структура NDIS_GUID сопоставляет GUID с OID_802_3_MULTICAST_LIST:

NDIS_GUID    NdisGuid = {{0x44795701, 0xa61b, 0x11d0, 0x8d, 0xd4,
                          0x00, 0xc0, 0x4f, 0xc3,
                          0x35, 0x8c},
                          OID_802_3_MULTICAST_LIST,
                          6,
                          fNDIS_GUID_TO_OID | fNDIS_GUID_ARRAY};

GUID — это идентификатор, используемый инструментарием управления Windows (WMI) для получения или задания сведений. NDIS перехватывает GUID, отправленный WMI драйверу NDIS, он сопоставляет GUID с OID и отправляет идентификатор OID драйверу. Драйвер возвращает элементы данных в NDIS, который затем возвращает данные в WMI.

NDIS также преобразует изменения состояния сетевого адаптера в идентификаторы GUID, распознаваемые WMI. Когда драйвер минипорта сообщает об изменении состояния сетевого адаптера с помощью функции NdisMIndicateStatusEx, NDIS преобразует NDIS_STATUS, указанные мини-драйвером, в GUID, который NDIS отправляет в WMI.

Если минипорт-драйвер поддерживает таможенные идентификаторы GUID, он должен поддерживать OID_GEN_SUPPORTED_GUIDS. Этот OID возвращает NDIS сопоставление пользовательских идентификаторов GUID с пользовательскими идентификаторами OID или строками NDIS_STATUS. После запроса мини-драйвера с помощью OID_GEN_SUPPORTED_GUIDS NDIS регистрирует пользовательские графические идентификаторы драйвера мини-порта с помощью WMI.

Требования

Заголовок

Ntddndis.h (include Ndis.h)

См. также

NdisMIndicateStatusEx