Share via


OID_GEN_CO_SUPPORTED_GUIDS

Die OID_GEN_CO_SUPPORTED_GUIDS OID fordert den Miniporttreiber auf, ein Array von Strukturen des Typs NDIS_GUID zurückzugeben. Jede Struktur im Array gibt die Zuordnung einer benutzerdefinierten GUID (global eindeutiger Bezeichner) zu einer benutzerdefinierten OID oder zu einer NDIS_STATUS an, die der Miniporttreiber über NdisMCoIndicateStatusEx sendet.

Die NDIS_GUID-Struktur ist wie folgt definiert:

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

Die Member dieser Struktur enthalten die folgenden Informationen:

Guid
Die benutzerdefinierte GUID, die für den Miniporttreiber definiert ist.

Oid
Die benutzerdefinierte OID, der Guid zugeordnet ist.

Status
Die NDIS_STATUS, der GUID zugeordnet ist.

Größe
Wenn das flag fNDIS_GUID_ARRAY festgelegt ist, gibt Size die Größe in Byte für jedes Datenelement im Array an, das vom Miniporttreiber zurückgegeben wird. Wenn das flag fNDIS_GUID_ANSI_STRING oder fNDIS_GUID_NDIS_STRING festgelegt ist, wird Größe auf -1 festgelegt. Andernfalls gibt Size die Größe des Datenelements in Byte an, das die GUID darstellt.

Flags
Die folgenden Flags können gemeinsam entfernt werden, um anzugeben, ob die GUID einer OID oder einer NDIS_STATUS Zeichenfolge zugeordnet ist, und um den Typ der für die GUID bereitgestellten Daten anzugeben:

fNDIS_GUID_TO_OID
Gibt bei Festlegung an, dass die NDIS_GUID-Struktur eine GUID einer OID zuordnet.

fNDIS_GUID_TO_STATUS
Gibt bei Festlegung an, dass die NDIS_GUID-Struktur eine GUID einer NDIS_STATUS Zeichenfolge zuordnet.

fNDIS_GUID_ANSI_STRING
Gibt bei Festlegung an, dass für die GUID eine NULL-endende ANSI-Zeichenfolge bereitgestellt wird.

fNDIS_GUID_UNICODE_STRING
Gibt bei Festlegung an, dass eine Unicode-Zeichenfolge für die GUID bereitgestellt wird.

fNDIS_GUID_ARRAY
Gibt bei Festlegung an, dass ein Array von Datenelementen für die GUID bereitgestellt wird. Die angegebene Größe gibt die Länge der einzelnen Datenelemente im Array an.

fNDIS_GUID_ALLOW_READ
Gibt bei Festlegung an, dass alle Benutzer diese GUID abfragen dürfen.

fNDIS_GUID_ALLOW_WRITE
Gibt bei Festlegung an, dass alle Benutzer diese GUID festlegen dürfen.

Bemerkungen

Hinweis

Standardmäßig sind benutzerdefinierte WMI-GUIDs, die von einem Miniporttreiber bereitgestellt werden, nur für Benutzer mit Administratorrechten zugänglich. Ein Benutzer mit Administratorrechten kann immer eine benutzerdefinierte GUID lesen oder in eine benutzerdefinierte GUID schreiben, wenn der Miniporttreiber den Lese- oder Schreibvorgang für diese GUID unterstützt. Legen Sie die flags fNDIS_GUID_ALLOW_READ und fNDIS_GUID_ALLOW_WRITE fest, damit alle Benutzer auf eine benutzerdefinierte GUID zugreifen können.

Beachten Sie, dass alle benutzerdefinierten GUIDs, die von einem Miniporttreiber registriert werden, entweder fNDIS_GUID_TO_OID oder fNDIS_GUID_TO_STATUS (nie beides) festlegen müssen. Alle anderen Flags können ggf. mithilfe des OR-Operators kombiniert werden.

Im folgenden Beispiel ordnet eine NDIS_GUID-Struktur eine GUID OID_GEN_CO_RCV_PDUS_NO_BUFFER zu:

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};

Eine GUID ist ein Bezeichner, der von der Windows-Verwaltungsinstrumentation (WMI) zum Abrufen oder Festlegen von Informationen verwendet wird. NDIS fängt eine von WMI an einen NDIS-Treiber gesendete GUID ab, ordnet die GUID einer OID zu und sendet die OID an den Treiber. Der Treiber gibt die Datenelemente an NDIS zurück, die dann die Daten an WMI zurückgibt.

NDIS übersetzt auch Änderungen an NIC-status in GUIDs, die von WMI erkannt werden. Wenn ein Miniporttreiber eine Änderung der NIC-status mit NdisMCoIndicateStatusEx meldet, übersetzt NDIS die vom Miniporttreiber angegebene NDIS_STATUS in eine GUID, die NDIS an WMI sendet.

Wenn ein verbindungsorientierter Miniporttreiber Zoll-GUIDs unterstützt, muss er OID_GEN_CO_SUPPORTED_GUIDS unterstützen, die die Zuordnung benutzerdefinierter GUIDs zu benutzerdefinierten OIDs oder NDIS_STATUS Zeichenfolgen an NDIS zurückgibt. Nach dem Abfragen des Miniporttreibers mit OID_GEN_CO_SUPPORTED_GUIDS registriert NDIS die benutzerdefinierten GUIDs des Miniporttreibers bei WMI.

Anforderungen

Version: Windows Vista und höher Header: Ntddndis.h (include Ndis.h)