PSHED_PI_SET_ERROR_SOURCE_INFO回呼函式 (ntddk.h)

PSHED 外掛程式的 SetErrorSourceInfo 回呼函式會設定錯誤來源。

語法

PSHED_PI_SET_ERROR_SOURCE_INFO PshedPiSetErrorSourceInfo;

NTSTATUS PshedPiSetErrorSourceInfo(
  [in, out, optional] PVOID PluginContext,
  [in]                PWHEA_ERROR_SOURCE_DESCRIPTOR ErrorSource
)
{...}

參數

[in, out, optional] PluginContext

當 PSHED 外掛程式呼叫 PshedRegisterPlugin 函式以向 PSHED 註冊本身時,在WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 結構的內容成員中指定的內容區域指標。

[in] ErrorSource

描述所設定錯誤來源之 WHEA_ERROR_SOURCE_DESCRIPTOR 結構的指標。

傳回值

PSHED 外掛程式的 SetErrorSourceInfo 回呼函式會傳回下列其中一個 NTSTATUS 程式代碼:

傳回碼 Description
STATUS_SUCCESS 錯誤來源已成功設定。
STATUS_NOT_SUPPORTED PSHED 外掛程式不支援指定錯誤來源的組態。
STATUS_UNSUCCESSFUL 發生錯誤。

備註

參與錯誤原始檔控制的 PSHED 外掛程式會在外掛程式呼叫 PshedRegisterPlugin 函式時,設定WHEA_PSHED_PLUGIN_REGISTRATION_PACKET結構的Callbacks.SetErrorSourceInfoCallbacks.EnableErrorSourceCallbacks.DisableErrorSource 成員,以指向其 SetErrorSourceInfoEnableErrorSourceDisableErrorSource 回呼函式。 PSHED 外掛程式也必須在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 結構的 FunctionalAreaMask 成員中設定 PshedFAErrorSourceControl 旗標。

Windows 核心會呼叫 PSHED 來設定錯誤來源,以回應 WHEA 管理應用程式的錯誤來源組態要求。 如果 PSHED 外掛程式已註冊參與錯誤原始檔控制,PSHED 會呼叫 PSHED 外掛程式的 SetErrorSourceInfo 回呼函式,讓 PSHED 外掛程式有機會執行錯誤來源組態作業。 錯誤來源組態數據包含在 ErrorSource 參數所指向的WHEA_ERROR_SOURCE_DESCRIPTOR結構中。

如果 PSHED 外掛程式不支援指定錯誤來源的設定, SetErrorSourceInfo 回呼函式會傳回STATUS_NOT_SUPPORTED。 在此情況下,PSHED 會執行所要求的錯誤來源組態作業。

如果 PSHED 外掛程式支援設定指定的錯誤來源, SetErrorSourceInfo 回呼函式應該將錯誤來源的組態資料儲存在登錄、系統 BIOS 數據表中,或以其他形式提供給錯誤來源使用的非卷動數據記憶體。 錯誤來源用來儲存錯誤來源之設定數據的特定形式是實作特定的。 SetErrorSourceInfo 回呼函式應該將組態數據套用至錯誤來源,如此一來,設定會在下次重新啟動系統時生效。 重新啟動系統時,PSHED 外掛程式應該會在錯誤來源探索期間向操作系統報告錯誤來源的新錯誤來源組態數據。

規格需求

需求
目標平台 桌面
標頭 ntddk.h (包含 Ntddk.h)
IRQL IRQL = DISPATCH_LEVEL

另請參閱

DisableErrorSource

EnableErrorSource

PshedRegisterPlugin

WHEA_ERROR_SOURCE_DESCRIPTOR

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET