DRIVER_PROXY_FEATURE_FLAGS構造体には、現在のシステムとドライバーの DriverProxy 機能の可用性と状態を示す機能フラグが含まれています。
構文
typedef union _DRIVER_PROXY_FEATURE_FLAGS {
ULONG AsUlong;
struct {
ULONG Enabled : 1;
ULONG Reserved : 31;
};
} DRIVER_PROXY_FEATURE_FLAGS, *PDRIVER_PROXY_FEATURE_FLAGS;
Members
AsUlong
1 つの ULONG 値としての機能フラグの完全なセット。 これにより、初期化、比較、またはストレージを容易にするために、すべてのフラグに 32 ビット整数としてアクセスできます。
Enabled
DriverProxy 機能が有効で使用可能かどうかを示す単一ビット フラグ。 このビットを 1 に設定すると、 IoCreateDriverProxyExtension や IoRegisterDriverProxyEndpoints などの DriverProxy API を 正常に使用できます。 このビットが 0 の場合、DriverProxy 機能は使用できません。
Reserved
将来使用するために予約済みビット。 これらのビットは現在未使用であり、ドライバーでは無視する必要があります。 これらは、DriverProxy 機能フラグの将来の拡張の可能性のために予約されています。
注釈
この構造体は、DriverProxy ホット スワップ可能な機能がサポートされ、有効になっているかどうかに関する情報を返すために 、IoGetDriverProxyFeatures によって使用されます。 ドライバーは、この関数を呼び出して構造体を取得し、DriverProxy API を使用する前に Enabled フラグを確認する必要があります。
Enabled フラグは、次のようないくつかのシステム条件に基づいて設定されます。
- セキュリティで保護されたカーネルが実行されている必要があります
- システムは DriverProxy 操作用に構成する必要があります
- レジストリ設定を使用して、ドライバーを DriverProxy 機能から除外しないでください
- DriverProxy をグローバルに無効にすることはできません
ドライバーは、初期化されていないビットにランダムな値が含まれていないことを確認するために、 IoGetDriverProxyFeatures に渡す前に、この構造体を 0 に初期化する必要があります。
Requirements
| Requirement | 価値 |
|---|---|
| Header | wdm.h |