NDIS_GUID 構造の入力
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 を取得するために、Uuidgen.exe アプリケーションを実行します。 このアプリケーションの詳細は、「インターフェイス UUID の生成」をご覧ください。
Oid や状態メンバーは、OID コードのULONG です。 NDIS 6.0 では、WMI GUID にカスタム状態インジケーターがマップされません。
NDIS_GUID構造体がデータ項目の配列を返す OID をマップする場合、Size メンバーは、配列内の各データ項目のサイズをバイト単位で指定します。 データが配列でなければ、 Size メンバーはデータのサイズを指定します。 データ項目のサイズが変更可能である、または OID がデータを返さない場合、 Size メンバーは -1 である必要があります。
Flags メンバーの次の値のビットごとの OR は、GUID に関わるデータの種類を示します。
fNDIS_GUID_TO_OID
NDIS_GUID構造体はこのフラグを設定すると、 GUID を OID にマップします。
fNDIS_GUID_TO_STATUS
NDIS 用に予約されています。 ミニポート ドライバーは、このフラグを使用できません。
fNDIS_GUID_ANSI_STRING
このフラグを設定すると、null で終わる ANSI 文字列がGUIDに指定されます。
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 の読み取りまたは書き込みを行うことができます。 fすべてのユーザーがカスタム GUID にアクセスできるようにNDIS_GUID_ALLOW_READ および fNDIS_GUID_ALLOW_WRITEフラグを設定することが可能です。
ドライバーは登録するすべてのカスタム GUID について、fNDIS_GUID_TO_OID設定する必要があります。 ミニポート ドライバーは、fNDIS_GUID_TO_STATUS設定を行わないでください。 その他のフラグはすべて、ビットごとの OR 演算を使用して結合することができます。