Многие пользователи, с недавнего времени стали получать заглушку с уведомлением «Несовместимое оборудование. Ваш компьютер оборудован процессором для последней версии Windows». Данное уведомление возникает при попытке загрузить на компьютер свежие обновления безопасности, сразу после того, как вы установили туда новый процессор.
Зайдите в репозитарий
https://github.com/zeffy/wufuc
Скачайте программу и установите, теперь данная заглушка вас не будет беспокоить. Наслаждайтесь.
Как это работает
Вкратце, в файле под названием
wuaueng.dll
есть 2 функции:IsDeviceServiceable(void)
иIsCPUSupported(void)
.IsDeviceServiceable(void)
по сути просто обертка надIsCPUSupported(void)
, которая кэширует полученный результат и переиспользует его при последующих вызовах. Мой патч использует это поведение, исправляя несколько логических значений и в основном заставляя Windows Update думать, что он уже проверил ваш процессор, и в результате он становится поддерживаемым.
-
Программа установки регистрирует wufuc в качестве настраиваемого поставщика Application Verifier.
-
Когда процесс
svchost.exe
запускается, загрузчик Windows PE автоматически загружает wufuc в свое виртуальное адресное пространство:- Перехват
LoadLibraryEx
автоматчиески патчитwuaueng.dll
при загрузке. - Перехват
RegQueryValueExW
необходим для обеспечения совместимости с попытками других средств обойти проверки ЦП. (см. вопрос #100).
- Перехват
-
Если wufuc загружается процессом
svchost.exe
, не связанным с Центром обновления Windows, он переходит в состояние покоя и никаких перехватов не применяется.
Оповещение о несовместимом оборудовании в кумулятивном обновлении, если апдейтпак текущий — то это KB4022719(появилось в KB4015549).