次の方法で共有


PshedRegisterPlugin 関数 (ntddk.h)

PshedRegisterPlugin 関数は、PSHED プラグインを PSHED に登録します。

構文

NTPSHEDAPI NTSTATUS PshedRegisterPlugin(
  [in, out] PWHEA_PSHED_PLUGIN_REGISTRATION_PACKET Packet
);

パラメーター

[in, out] Packet

PSHED プラグインの登録情報を記述する初期化された WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 構造体へのポインター。

戻り値

PshedRegisterPlugin は、次のいずれかの NTSTATUS コードを返します。

リターン コード 説明
STATUS_SUCCESS
PSHED プラグインが正常に登録されました。
STATUS_INVALID_PARAMETER
指定された登録パケット内のデータが無効です。

注釈

PSHED プラグインは PshedRegisterPlugin 関数を呼び出して、PSHED に自身を登録します。 通常、PSHED プラグインは 、DriverEntry 関数またはその AddDevice 関数内からこの関数を呼び出します。

Windows 10 バージョン 1903 (WDK 10 バージョン 18362) 以降では、PshedUnregisterPlugin 関数を呼び出すことによって、実行中のシステムでプラグインを削除および更新できる PSHED-Plugin インターフェイスの V2 を使用できます。 登録を解除できるため、V2 プラグインでは、WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2構造体の FunctionalAreaMask メンバーに PshedFADiscovery フラグ (検出機能領域) を指定できません。 プラグインの登録の詳細については、「PSHED プラグインの登録」を参照してください。 V1 プラグインの場合、登録を解除しようとすると、バグチェックが発生する可能性があります。 可能であれば V2 プラグインを使用することをお勧めします。これは現在の既定値です。

V1 と V2 プラグインを登録するには、正しい構造体を使用します。 V1 のWHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V1 と V2 の WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2

V2 プラグインは、「Windows 10での WHEA の使用」で説明されているように、または WheaAddErrorSource と WheaRemoveErrorSource呼び出すことで、エラー ソースを追加できます。

プラグインは、WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2構造のバージョンとして WHEA_PLUGIN_REGISTRATION_PACKET_V1 を指定することで、引き続き検出機能領域 使用できます。

V1 と V2 の両方のプラグイン上のすべてのコールバックは、DISPATCH_LEVELの最小 IRQL で呼び出されます。

要件

要件
サポートされている最小のクライアント Windows Server 2008、Windows Vista SP1、およびそれ以降のバージョンの Windows でサポートされています。
対象プラットフォーム ユニバーサル
Header ntddk.h (Ntddk.h を含む)
Library Pshed.lib
[DLL] Pshed.dll
IRQL <=DISPATCH_LEVEL
DDI コンプライアンス規則 HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

こちらもご覧ください

AddDevice

DriverEntry

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET