PshedRegisterPlugin 函式 (ntddk.h)
PshedRegisterPlugin 函式會向 PSHED 註冊 PSHED 外掛程式。
語法
NTPSHEDAPI NTSTATUS PshedRegisterPlugin(
[in, out] PWHEA_PSHED_PLUGIN_REGISTRATION_PACKET Packet
);
參數
[in, out] Packet
初始化 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 結構的指標,描述 PSHED 外掛程式的註冊資訊。
傳回值
PshedRegisterPlugin 會傳回下列其中一個 NTSTATUS 代碼:
傳回碼 | Description |
---|---|
|
PSHED 外掛程式已成功註冊。 |
|
提供之註冊封包中的數據無效。 |
備註
PSHED 外掛程式會呼叫 PshedRegisterPlugin 函式,以向 PSHED 註冊本身。 PSHED 外掛程式通常會從 其 DriverEntry 函式或其 AddDevice 函式內呼叫此函式。
從 Windows 10 版本 1903 (WDK 10 版本 18362) 開始,可以使用 PSHED-Plugin 介面的 V2,允許藉由呼叫 PshedUnregisterPlugin 函式來移除並更新執行中的系統上的外掛程式。 因為可以取消註冊,所以 V2 外掛程式無法在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2 結構的 FunctionalAreaMask 成員中指定 PshedFADiscovery 旗標 (探索功能區域) 。 如需註冊外掛程式的相關信息,請參閱註冊 PSHED 外掛程式。 針對 V1 外掛程式,如果您嘗試取消註冊,可能會發生錯誤檢查。 建議您盡可能使用 V2 外掛程式,這是目前的預設值。
若要註冊 V1 與 V2 外掛程式,請使用正確的結構。 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V1 V1 和 V2 的 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2 。
V2 外掛程式仍然可以新增錯誤來源,如在 Windows 10 上使用WHEA 中所述,或呼叫 WheaAddErrorSource 和 WheaRemoveErrorSource 中所述。
外掛程式可以藉由指定 WHEA_PLUGIN_REGISTRATION_PACKET_V1 作為其 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2 結構的版本,繼續使用探索功能區域。
V1 和 V2 外掛程式上的所有回呼至少都會呼叫DISPATCH_LEVEL IRQL。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Server 2008、Windows Vista SP1 和更新版本的 Windows 支援。 |
目標平台 | Universal |
標頭 | ntddk.h (包含 Ntddk.h) |
程式庫 | Pshed.lib |
Dll | Pshed.dll |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDDIs (storport) 、 PowerIrpDDis (wdm) |