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 註冊本身時,在 ContextWHEA_PSHED_PLUGIN_REGISTRATION_PACKET 成員中指定的內容區域指標。
[in] ErrorSource
描述所設定錯誤來源之 WHEA_ERROR_SOURCE_DESCRIPTOR 結構的指標。
傳回值
PSHED 外掛程式的 SetErrorSourceInfo 回呼函式會傳回下列其中一個 NTSTATUS 程式代碼:
傳回碼 | 描述 |
---|---|
STATUS_SUCCESS | 錯誤來源已成功設定。 |
STATUS_NOT_SUPPORTED | PSHED 外掛程式不支援指定錯誤來源的設定。 |
STATUS_UNSUCCESSFUL | 發生錯誤。 |
言論
參與錯誤原始檔控制的 PSHED 外掛程式會將 Callbacks.SetErrorSourceInfo、Callbacks.EnableErrorSource,以及 Callbacks.DisableErrorSourceWHEA_PSHED_PLUGIN_REGISTRATION_PACKET 結構的成員指向其 SetErrorSourceInfo、EnableErrorSource和 DisableErrorSource 回呼函式時,外掛程式呼叫 PshedRegisterPlugin 函式來向 PSHED 註冊本身。 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 |