OID_GEN_CO_SUPPORTED_GUIDS OID 请求微型端口驱动程序返回类型NDIS_GUID的结构数组。 数组中的每个结构指定自定义 GUID(全局唯一标识符)到自定义 OID 或微型端口驱动程序通过 NdisMCoIndicateStatusEx发送的NDIS_STATUS的映射。
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
Guid 映射到的自定义 OID。
状态
Guid 映射到的NDIS_STATUS。
大小
设置fNDIS_GUID_ARRAY标志时,Size 指定微型端口驱动程序返回的数组中每个数据项的大小(以字节为单位)。 如果设置了fNDIS_GUID_ANSI_STRING或fNDIS_GUID_NDIS_STRING标志,则 大小 设置为 -1。 否则,Size 指定 GUID 表示的数据项的大小(以字节为单位)。
标志
以下标志可以一起为 ORed,以指示 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
设置后,指示为 GUID 提供以 null 结尾的 ANSI 字符串。
fNDIS_GUID_UNICODE_STRING
设置后,指示为 GUID 提供 Unicode 字符串。
fNDIS_GUID_ARRAY
设置后,指示为 GUID 提供数据项数组。 指定的 Size 指示数组中每个数据项的长度。
fNDIS_GUID_ALLOW_READ
设置后,指示允许所有用户查询此 GUID。
fNDIS_GUID_ALLOW_WRITE
设置后,指示允许所有用户设置此 GUID。
言论
注意
默认情况下,微型端口驱动程序提供的自定义 WMI GUID 仅可供具有管理员权限的用户访问。 如果微型端口驱动程序支持该 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_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};
GUID 是 Windows Management Instrumentation (WMI)用于获取或设置信息的标识符。 NDIS 截获 WMI 发送到 NDIS 驱动程序的 GUID,将 GUID 映射到 OID,并将 OID 发送到驱动程序。 驱动程序将数据项返回到 NDIS,然后将数据返回到 WMI。
NDIS 还会将 NIC 状态的更改转换为 WMI 识别的 GUID。 当微型端口驱动程序报告 NIC 状态更改时,NdisMCoIndicateStatusEx,NDIS 会将微型端口驱动程序指示的NDIS_STATUS转换为 NDIS 发送到 WMI 的 GUID。
如果面向连接的微型端口驱动程序支持海关 GUID,则它必须支持OID_GEN_CO_SUPPORTED_GUIDS,这会将自定义 GUID 映射到自定义 OID 或NDIS_STATUS字符串。 使用 OID_GEN_CO_SUPPORTED_GUIDS查询微型端口驱动程序后,NDIS 会向 WMI 注册微型端口驱动程序的自定义 GUID。
要求
版本:Windows Vista 及更高版本 标头:Ntddndis.h(包括 Ndis.h)