Compartilhar via


OID_GEN_SUPPORTED_GUIDS

Como uma consulta, o OID_GEN_SUPPORTED_GUIDS OID solicita que o driver de miniporte retorne uma matriz de estruturas do tipo NDIS_GUID.

Informações sobre versão

Windows Vista e versões posteriores do Windows
Com suporte.

Drivers de miniporta NDIS 6.0 e posterior
Opcional.

Drivers de miniporta NDIS 5.1
Opcional.

Windows XP
Com suporte.

Drivers de miniporta NDIS 5.1
Opcional.

Comentários

Cada estrutura na matriz especifica o mapeamento de um GUID personalizado (identificador global exclusivo) para um OID personalizado ou para um NDIS_STATUS que o driver de miniporto envia por meio da função NdisMIndicateStatusEx .

A estrutura NDIS_GUID é definida da seguinte maneira:

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

Os membros dessa estrutura contêm as seguintes informações:

Guid
Especifica o GUID personalizado definido para o driver de miniporta.

Oid
Especifica o OID personalizado para o qual o Guid mapeia .

Status
Especifica o NDIS_STATUS para o qual o Guid é mapeado.

Tamanho
Especifica o tamanho em bytes de cada item de dados na matriz retornada pelo driver de miniporta. Se o sinalizador fNDIS_GUID_ANSI_STRING ou fNDIS_GUID_NDIS_STRING estiver definido, Tamanho será definido como -1. Caso contrário, Size especifica o tamanho em bytes do item de dados que o GUID representa. Esse membro é especificado somente quando o sinalizador fNDIS_GUID_ARRAY é definido.

Sinalizadores
Os sinalizadores a seguir podem ser combinados pelo operador OR para indicar se o GUID é mapeado para um OID ou para uma cadeia de caracteres de NDIS_STATUS e para indicar o tipo de dados fornecidos para o GUID:

fNDIS_GUID_TO_OID
Indica que a estrutura NDIS_GUID mapeia um GUID para um OID.

fNDIS_GUID_TO_STATUS
Indica que a estrutura NDIS_GUID mapeia um GUID para uma cadeia de caracteres NDIS_STATUS.

fNDIS_GUID_ANSI_STRING
Indica que uma cadeia de caracteres ANSI terminada em nulo é fornecida para o GUID.

fNDIS_GUID_UNICODE_STRING
Indica que uma cadeia de caracteres Unicode é fornecida para o GUID.

fNDIS_GUID_ARRAY
Indica que uma matriz de itens de dados é fornecida para o GUID. O Tamanho especificado indica o comprimento de cada item de dados na matriz.

fNDIS_GUID_ALLOW_READ
Quando definido, indica que todos os usuários têm permissão para usar esse GUID para obter informações.

fNDIS_GUID_ALLOW_WRITE
Quando definido, indica que todos os usuários têm permissão para usar esse GUID para definir informações.

Nota Por padrão, GUIDs WMI personalizados fornecidos por um driver de miniporta só podem ser acessados por usuários com privilégios de administrador. Um usuário com privilégios de administrador sempre poderá ler ou gravar em um GUID personalizado se o driver de miniporto der suporte à operação de leitura ou gravação para esse GUID. Defina os sinalizadores fNDIS_GUID_ALLOW_READ e fNDIS_GUID_ALLOW_WRITE para permitir que todos os usuários acessem um GUID personalizado.

Observe que todos os GUIDs personalizados registrados por um driver de miniporto devem definir fNDIS_GUID_TO_OID ou fNDIS_GUID_TO_STATUS (nunca definir ambos). Todos os outros sinalizadores podem ser combinados usando o operador OR conforme aplicável.

No exemplo a seguir, uma estrutura NDIS_GUID mapeia um GUID para 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};

Um GUID é um identificador usado pela WMI (Instrumentação de Gerenciamento do Windows) para obter ou definir informações. O NDIS intercepta um GUID enviado pelo WMI para um driver NDIS, mapeia o GUID para um OID e envia o OID para o driver. O driver retorna os itens de dados para o NDIS, que retorna os dados para o WMI.

O NDIS também converte alterações no status NIC em GUIDs reconhecidos pelo WMI. Quando um driver de miniporta relata uma alteração na NIC status usando a função NdisMIndicateStatusEx, o NDIS converte o NDIS_STATUS indicado pelo driver de miniporto em um GUID que o NDIS envia para o WMI.

Se um driver de miniporta der suporte a GUIDs alfandegários, ele deverá dar suporte a OID_GEN_SUPPORTED_GUIDS. Esse OID retorna ao NDIS o mapeamento de GUIDs personalizados para OIDs personalizados ou cadeias de caracteres de NDIS_STATUS. Depois de consultar o driver de miniporto usando OID_GEN_SUPPORTED_GUIDS, o NDIS registra os GUIDs personalizados do driver de miniporto com o WMI.

Requisitos

parâmetro

Ntddndis.h (inclua Ndis.h)

Confira também

NdisMIndicateStatusEx