Функция 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:
Код возврата | Описание |
---|---|
|
Подключаемый модуль PSHED успешно зарегистрирован. |
|
Недопустимые данные в предоставленном пакете регистрации. |
Примечания
Подключаемый модуль PSHED вызывает функцию PshedRegisterPlugin для регистрации в PSHED. Подключаемый модуль PSHED обычно вызывает эту функцию из функции DriverEntry или функции AddDevice .
Начиная с Windows 10 версии 1903 (WDK 10 версии 18362), доступна версия 2 интерфейсов PSHED-Plugin, которая позволяет удалить и обновить подключаемый модуль в работающей системе путем вызова функции PshedUnregisterPlugin. Так как они могут быть незарегистрированы, подключаемые модули версии 2 не могут указывать флаг PshedFADiscovery (функциональную область обнаружения) в члене FunctionalAreaMask структуры WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2. Сведения о регистрации подключаемого модуля см. в разделе "Регистрация подключаемого модуля PSHED". При попытке отменить регистрацию подключаемого модуля версии 1 может возникнуть ошибка. По возможности рекомендуется использовать подключаемый модуль версии 2, который является текущим значением по умолчанию.
Чтобы зарегистрировать подключаемый модуль версии 1 и V2, используйте правильную структуру. WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V1 для версии 1 и WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2 для версии 2.
Подключаемый модуль версии 2 по-прежнему может добавлять источники ошибок, как описано в разделе "Использование WHEA в Windows 10" или путем вызова WheaAddErrorSource и WheaRemoveErrorSource.
Подключаемый модуль может продолжать использовать функциональную область обнаружения, указав WHEA_PLUGIN_REGISTRATION_PACKET_V1 в качестве версии своей структуры WHEA_PSHED_PLUGIN_REGISTRATION_PACKET_V2 .
Все обратные вызовы в подключаемых модулях V1 и V2 вызываются как минимум irQL DISPATCH_LEVEL.
Требования
Минимальная версия клиента | Поддерживается в Windows Server 2008, Windows Vista с пакетом обновления 1 (SP1) и более поздних версиях Windows. |
Целевая платформа | Универсальное |
Заголовок | ntddk.h (include Ntddk.h) |
Библиотека | Pshed.lib |
DLL | Pshed.dll |
IRQL | <=DISPATCH_LEVEL |
Правила соответствия DDI | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |