OID_GEN_CO_SUPPORTED_GUIDS
OID_GEN_CO_SUPPORTED_GUIDS OID begär att miniportdrivrutinen returnerar en matris med strukturer av typen NDIS_GUID. Varje struktur i matrisen anger mappningen av en anpassad GUID (globalt unik identifierare) till antingen en anpassad OID eller till en NDIS_STATUS som miniportdrivrutinen skickar via NdisMCoIndicateStatusEx.
Den NDIS_GUID strukturen definieras på följande sätt:
typedef struct _NDIS_GUID {
GUID Guid;
union {
NDIS_OID Oid;
NDIS_STATUS Status;
};
ULONG Size;
ULONG Flags;
} NDIS_GUID, *PNDIS_GUID;
Medlemmarna i den här strukturen innehåller följande information:
Guid
Det anpassade GUID som definierats för miniportdrivrutinen.
Oid
Den anpassade OID som Guid mappas till.
status
Den NDIS_STATUS som Guid mappas till.
Storlek
När flaggan fNDIS_GUID_ARRAY har angetts anger Storlek storleken i byte för varje dataobjekt i matrisen som returneras av miniportdrivrutinen. Om flaggan fNDIS_GUID_ANSI_STRING eller fNDIS_GUID_NDIS_STRING har angetts är Storlek inställd på -1. Annars anger Storlek storleken i byte för det dataobjekt som GUID representerar.
Flaggor
Följande flaggor kan vara ORed tillsammans för att ange om GUID mappar till en OID eller till en NDIS_STATUS sträng och för att ange vilken typ av data som tillhandahålls för GUID:
fNDIS_GUID_TO_OID
När den anges anger att NDIS_GUID-strukturen mappar ett GUID till en OID.
fNDIS_GUID_TO_STATUS
När den anges anger att NDIS_GUID-strukturen mappar ett GUID till en NDIS_STATUS sträng.
fNDIS_GUID_ANSI_STRING
När värdet är inställt anger det att en null-avslutad ANSI-sträng tillhandahålls för GUID.
fNDIS_GUID_UNICODE_STRING
När den anges anger att en Unicode-sträng anges för GUID.
fNDIS_GUID_ARRAY
När detta anges anger det att en matris med dataobjekt tillhandahålls för GUID. Den angivna storleken anger längden på varje dataobjekt i matrisen.
fNDIS_GUID_ALLOW_READ
När detta anges anger att alla användare får köra frågor mot det här GUID:et.
fNDIS_GUID_ALLOW_WRITE
När detta anges anger att alla användare har tillåtelse att ange detta GUID.
Anteckning
Som standard är anpassade WMI-GUID:er som tillhandahålls av en miniportdrivrutin endast tillgängliga för användare med administratörsbehörighet. En användare med administratörsbehörighet kan alltid läsa eller skriva till ett anpassat GUID om miniportdrivrutinen stöder läs- eller skrivåtgärden för guid-gränssnittet. Ange flaggorna fNDIS_GUID_ALLOW_READ och fNDIS_GUID_ALLOW_WRITE så att alla användare kan komma åt ett anpassat GUID.
Observera att alla anpassade GUID:er som registrerats av en miniportdrivrutin måste ange antingen fNDIS_GUID_TO_OID eller fNDIS_GUID_TO_STATUS (ange aldrig båda). Alla andra flaggor kan kombineras med hjälp av OR-operatorn enligt vad som är tillämpligt.
I följande exempel mappar en NDIS_GUID struktur ett GUID till 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};
Ett GUID är en identifierare som används av Windows Management Instrumentation (WMI) för att hämta eller ange information. NDIS fångar upp ett GUID som skickas av WMI till en NDIS-drivrutin, mappar GUID till en OID och skickar OID till drivrutinen. Drivrutinen returnerar dataobjekten till NDIS, som sedan returnerar data till WMI.
NDIS översätter också ändringar i NIC-status till GUID:er som identifieras av WMI. När en miniportdrivrutin rapporterar en ändring i NIC-status med NdisMCoIndicateStatusExöversätter NDIS NDIS_STATUS som anges av miniportdrivrutinen till ett GUID som NDIS skickar till WMI.
Om en anslutningsorienterad miniportdrivrutin stöder tull-GUID måste den stödja OID_GEN_CO_SUPPORTED_GUIDS, som återgår till NDIS mappningen av anpassade GUID:er till anpassade OID:er eller NDIS_STATUS strängar. När du har frågat miniportdrivrutinen med OID_GEN_CO_SUPPORTED_GUIDS registrerar NDIS miniportdrivrutinens anpassade GUID med WMI.
Version: Windows Vista och senare Header: Ntddndis.h (inkludera Ndis.h)