次の方法で共有


DRIVER_PROXY_FEATURE_FLAGS 共用体 (wdm.h)

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 に設定すると、 IoCreateDriverProxyExtensionIoRegisterDriverProxyEndpoints などの DriverProxy API を 正常に使用できます。 このビットが 0 の場合、DriverProxy 機能は使用できません。

Reserved

将来使用するために予約済みビット。 これらのビットは現在未使用であり、ドライバーでは無視する必要があります。 これらは、DriverProxy 機能フラグの将来の拡張の可能性のために予約されています。

注釈

この構造体は、DriverProxy ホット スワップ可能な機能がサポートされ、有効になっているかどうかに関する情報を返すために 、IoGetDriverProxyFeatures によって使用されます。 ドライバーは、この関数を呼び出して構造体を取得し、DriverProxy API を使用する前に Enabled フラグを確認する必要があります。

Enabled フラグは、次のようないくつかのシステム条件に基づいて設定されます。

  • セキュリティで保護されたカーネルが実行されている必要があります
  • システムは DriverProxy 操作用に構成する必要があります
  • レジストリ設定を使用して、ドライバーを DriverProxy 機能から除外しないでください
  • DriverProxy をグローバルに無効にすることはできません

ドライバーは、初期化されていないビットにランダムな値が含まれていないことを確認するために、 IoGetDriverProxyFeatures に渡す前に、この構造体を 0 に初期化する必要があります。

Requirements

Requirement 価値
Header wdm.h

こちらも参照ください

IoGetDriverProxyFeatures

IoCreateDriverProxyExtension

IoRegisterDriverProxyEndpoints