OID_GEN_CO_SUPPORTED_GUIDS

El OID_GEN_CO_SUPPORTED_GUIDS OID solicita al controlador de minipuerto que devuelva una matriz de estructuras del tipo NDIS_GUID. Cada estructura de la matriz especifica la asignación de un GUID personalizado (identificador único global) a un OID personalizado o a una NDIS_STATUS que el controlador de miniporte envía a través de NdisMCoIndicateStatusEx.

La estructura NDIS_GUID se define de la siguiente manera:

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

Los miembros de esta estructura contienen la siguiente información:

Guid
GUID personalizado definido para el controlador de minipuerto.

Oid
OID personalizado al que se asigna guid .

Estado
La NDIS_STATUS a la que se asigna guid .

Tamaño
Cuando se establece la marca fNDIS_GUID_ARRAY, Size especifica el tamaño en bytes de cada elemento de datos de la matriz devuelta por el controlador de miniport. Si se establece la marca fNDIS_GUID_ANSI_STRING o fNDIS_GUID_NDIS_STRING, Size se establece en -1. De lo contrario, Size especifica el tamaño en bytes del elemento de datos que representa el GUID.

Marcas
Las marcas siguientes pueden ser ORed juntas para indicar si el GUID se asigna a un OID o a una cadena de NDIS_STATUS e indicar el tipo de datos proporcionados para el GUID:

fNDIS_GUID_TO_OID
Cuando se establece, indica que la estructura de NDIS_GUID asigna un GUID a un OID.

fNDIS_GUID_TO_STATUS
Cuando se establece, indica que la estructura de NDIS_GUID asigna un GUID a una cadena de NDIS_STATUS.

fNDIS_GUID_ANSI_STRING
Cuando se establece, indica que se proporciona una cadena ANSI terminada en null para el GUID.

fNDIS_GUID_UNICODE_STRING
Cuando se establece, indica que se proporciona una cadena Unicode para el GUID.

fNDIS_GUID_ARRAY
Cuando se establece, indica que se proporciona una matriz de elementos de datos para el GUID. El tamaño especificado indica la longitud de cada elemento de datos de la matriz.

fNDIS_GUID_ALLOW_READ
Cuando se establece, indica que todos los usuarios pueden consultar este GUID.

fNDIS_GUID_ALLOW_WRITE
Cuando se establece, indica que todos los usuarios pueden establecer este GUID.

Observaciones

Nota

De forma predeterminada, los GUID de WMI personalizados proporcionados por un controlador de minipuerto solo son accesibles para los usuarios con privilegios de administrador. Un usuario con privilegios de administrador siempre puede leer o escribir en un GUID personalizado si el controlador de miniporte admite la operación de lectura o escritura para ese GUID. Establezca las marcas fNDIS_GUID_ALLOW_READ y fNDIS_GUID_ALLOW_WRITE para permitir que todos los usuarios accedan a un GUID personalizado.

Tenga en cuenta que todos los GUID personalizados registrados por un controlador de minipuerto deben establecer fNDIS_GUID_TO_OID o fNDIS_GUID_TO_STATUS (nunca establecer ambos). Todas las demás marcas se pueden combinar mediante el operador OR según corresponda.

En el ejemplo siguiente, una estructura de NDIS_GUID asigna un GUID a OID_GEN_CO_RCV_PDUS_NO_BUFFER:

NDIS_GUID NdisGuid =  {{0x0a214809, 0xe35f, 0x11d0, 0x96, 0x92, 0x00,
 0xc0, 0x4f, 0xc3, 0x35, 0x8c},
 GUID_NDIS_GEN_CO_RCV_PDUS_NO_BUFFER,
 OID_GEN_CO_RCV_PDUS_NO_BUFFER,
 4,
 fNDIS_GUID_TO_OID};

Un GUID es un identificador que usa Instrumental de administración de Windows (WMI) para obtener o establecer información. NDIS intercepta un GUID enviado por WMI a un controlador NDIS, asigna el GUID a un OID y envía el OID al controlador. El controlador devuelve los elementos de datos a NDIS, que después devuelve los datos a WMI.

NDIS también traduce los cambios en el estado de la NIC en GUID reconocidos por WMI. Cuando un controlador de miniporte informa de un cambio en el estado de la NIC con NdisMCoIndicateStatusEx, NDIS traduce el NDIS_STATUS indicado por el controlador de miniport en un GUID que NDIS envía a WMI.

Si un controlador de minipuerto orientado a la conexión admite GUID aduaneros, debe admitir OID_GEN_CO_SUPPORTED_GUIDS, que devuelve a NDIS la asignación de GUID personalizados a identificadores OID personalizados o cadenas de NDIS_STATUS. Después de consultar el controlador de minipuerto con OID_GEN_CO_SUPPORTED_GUIDS, NDIS registra los GUID personalizados del controlador de miniporte con WMI.

Requisitos

Versión: Windows Vista y encabezado posterior: Ntddndis.h (incluya Ndis.h)