Install patch file windows

Как пропатчить для установки сторонних тем Windows 10 1511?

В этом месяце пользователи Windows 10 получили первое крупное обновление для системы. К сожалению, с новой версией системы не совместимы ни патчи для установки сторонних тем (патч уже выпущен, смотри Способ 3), ни собственно темы, созданные для первой стабильной версии (10240). Далее рассказывается о временном решении этой проблемы, причём сразу двумя способами.

Для начала сразу предупредим, что воспользовавшись этой инструкцией вы получите возможность использования сторонних тем оформления, но только специально созданных или модифицированных для Windows 10 1511 (она же «с ноябрьским обновлением», она же сборка 10586). Некоторые авторы уже начали модифицировать свои самые популярные темы, но вряд ли это будет сделано для всех ранее выпущенных тем.

Способ 1

Внимание! В Windows 10 1511 с номером сборки 10586.494 (обновление было выпущено 12 июля 2016 года) этот способ уже не работает. Вместо него предлагается использовать Способ 2.

Теперь о том как же всё-таки пропатчить для установки сторонних тем Windows 10 1511. Пока авторы патчей не подготовили более элегантного решения, придётся выполнить несколько действий и воспользоваться необходимыми системными файлами, подготовленными кастомайзером под ником cu88 .

  1. Создать точку восстановления системы.
  2. Скачать и распаковать на диске набор необходимых инструментов Theme Patcher (ссылка в конце статьи).
  3. Запустить и установить от имени администратора патчи UxStyle_0242_x86_x64_preview и UltraUXThemePatcher_3.0.4.
  4. Перезагрузить компьютер.
  5. Запустить файл Add_Take_Ownership_to_context_menu.reg и согласиться на внесение изменений в систему.
  6. Перейти в папку C:\Windows\System32.
  7. Стать владельцем файлов themeui.dll, uxinit.dll, uxtheme.dll, кликнув по каждому правой кнопкой мыши и выбрав в контекстном меню пункт Take Ownership.
  8. Создать резервные копии файлов themeui.dll, uxinit.dll, uxtheme.dll или просто присвоить им новые имена, например old_themeui.dll.
  9. Скопировать модифицированные файлы themeui.dll, uxinit.dll, uxtheme.dll из папки File Patch x86 или File Patch x64 (в зависимости от битности вашей операционной системы) в папку C:\Windows\System32.
  10. Перезагрузиться (хотя в нашей тестовой системе вторая перезагрузка не понадобилась).

Теперь ваша система готова к установке сторонних тем оформления.

Внимание! Мы не рекомендуем использование модифицированных системных файлов, это может привести к полной неработоспособности операционной системы. Перед использованием данной инструкции настоятельно советуем создать точку восстановления системы. Вы делаете всё на свой страх и риск.

Если у вас возникли проблемы с использованием первого способа, попробуйте второй. Он безопаснее и проще, но менее удобен из-за необходимости редактировать theme-файл каждой вновь устанавливаемой темы оформления.

Способ 2

  1. Создать точку восстановления системы.
  2. Скачать и установить патч UxStyle (проект похоже закрыт) или его модифицированную версию .
  3. Переименовать файл C:\Windows\Resources\Themes\aero\aerolite.msstyles в aerolite.msstyles.bak
  4. Создать в папке C:\Windows\Resources\Themes\aero\ новую папку с именем aerolite.msstyles
  5. Скопировать нужную тему в созданную папку.
  6. Открыть файл темы .theme в любом текстовом редакторе (Блокнот подойдёт) и заменить все указания на стандартный путь к файлам темы:
    C:\Windows\Resources\Themes или %SystemRoot%\Resources\Themes
    на новый:
    C:\Windows\Resources\Themes\aero\aerolite.msstyles или %SystemRoot%\Resources\Themes\aero\aerolite.msstyles
  7. Применить тему в панели Параметры → Персонализация → Темы → Параметры Темы.

Способ 3

В первых числах февраля 2016 года один из энтузиастов собрал таки UXThemePatcher для Windows 10 1511. Ручная подмена файлов более не требуется, всю работу программа выполняет самостоятельно. Впрочем приведённые выше инструкции могут снова стать актуальными после выпуска одного из будущих обновлений для системы. Обновлено 19.04.2016 — так и получилось: в новейших версиях системы патч не работает.

Uninstallable Patches

Whether a patch can be uninstalled depends upon how the patch was authored, the version of Windows Installer used to install the patch, and the changes made by the patch to the application. If a patch is not uninstallable, then the only way to remove the patch is to uninstall the entire application and reinstall without applying the patch being removed.

Читайте также:  Что такое операционная система windows mobile

You can call for the uninstallation of patches applied with Windows Installer version 3.0 by using Command Line Options, the MsiRemovePatches function, or the RemovePatches method as described in the Uninstalling Patches section. The Windows Installer verifies that each of the patches listed for removal in the MSIPATCHREMOVE property is uninstallable. If the user does not have privileges to remove the patch, the patch is unknown for the product, patch policy prevents removal, or the patch was marked as not uninstallable, the installer returns an error indicating a failed installation transaction.

Windows Installer 2.0: Not supported. Patches applied using a version of Windows Installer that is earlier than Windows Installer 3.0 are not uninstallable.

Patches that are Not Uninstallable

A patch (.msp file) applied to an installed application is not uninstallable in the following cases. The only method to remove a patch that is not uninstallable is to uninstall the patched application and then reinstall the application without reapplying the patch. In this case, you must reapply any patches that you do not wish to be removed from the application.

Patches applied using a version of Windows Installer that is less than Windows Installer 3.0 are not uninstallable.

Patches applied to applications installed on a computer that has had the DisablePatchUninstall policy set by an administrator are not uninstallable. When this machine policyhas been set, no patches on the computer can be uninstalled, even by an administrator.

Patches that do not have a MsiPatchMetadata table in their database are not uninstallable.

Patches that do not include the following row in their MsiPatchMetadata table are not uninstallable. The patch is not uninstallable for other values of Company, Property, and Value.

Company Property Value
AllowRemoval 1

The patch has been applied to an application installed in a context for which the user has insufficient privileges to uninstall patches. The words «Not Allowed» in the following table indicate that an administrator or non-administrator user cannot uninstall patches from patched applications installed in this context. The word «Allowed» in this table means that privileges do not prevent an administrator or non-administrator user from uninstalling patches, however for any of the other reasons discussed in this section, it still might not be possible to uninstall the patch.

application Installation Context Administrator Uninstall of Patch Non-Administrator Uninstall of Patch
Per-Machine Allowed Generally Not Allowed The only exception is if the patch was applied using (LUA) patching. A patch marked as a LUA patch is uninstallable by either administrators or non-administrators. LUA patching is only available for packages installed per-machine from media and require special authoring.
Per-User Non-Managed for Current User Allowed Allowed
Per-User Non-Managed for Different User Not Allowed Not Allowed
Per-User Managed for Current User Allowed Not Allowed
Per-User Managed for Different User Not Allowed Not Allowed

A major upgrade applied by a patch is not uninstallable. Major Upgrades of an application should be performed by installing the upgraded application (.msi file) rather than a patch.

Patches applied to an administrative installation are not uninstallable. Patching administrative installations is not recommended. The current set of patches should be applied on the user’s computer after the user installs the application from the administrative image. This can prevent the package code cached on the user’s computer from becoming different than the package code on the administrative installation. If the package code cached on the user’s computer becomes different from that on the administrative installation, reinstall the application from the administrative installation and then patch the client computer.

When a patch adds new content to any of the tables in the following list, Windows Installer marks the patch as being not uninstallable. An uninstallable patch can add new files, assemblies, registry entries, components, or features to an installation by adding new rows to database tables that are not included in this list.

Установка CAB и MSU файлов обновлений Windows в ручном режиме

Обновления для операционной системы Windows выпускаются в виде пакетов с расширением MSU или CAB. В том случае, если не работает (специально отключен) штатный функционал службы Windows Update (Центра обновления Windows), нужные для системы накопительные обновления или обновления безопасности можно скачать и установить вручную в офлайн режиме. В этой статье мы покажем, как в Windows 10 скачать и установить обновления в формате MSU и CAB файлов.

Где скачать MSU файл обновления Windows

Microsoft изначально выпускает свои обновления и патчи в формате CAB файла. Именно в таком виде ваш компьютер получает обновления с серверов обновления Microsoft или локального сервера WSUS. Для более удобного ручного распространения отдельных обновлений клиентами через каталог обновлений Microsoft, данные CAB файлы упаковываются в специальный формат MSU (Microsoft Update Standalone Package).

Скачать MSU файлы обновлений Windows (а в некоторых случаях и CAB)и других продуктов MSFT можно в каталоге обновлений Microsoft (https://www.catalog.update.microsoft.com/). Перейдите в Microsoft Update Catalog, найдите и скачайте нужное обновление. К примеру, я хочу установить обновление безопасности для Adobe Flash Player под Windows 10 x64 1507 – KB4056887. Нажмите на кнопку Download.

Переместите скачанный файл windows10.0-kb4056887-x64_fca8a311f0495e669715ae5aa0e0d8720f945049.msu в каталог C:\temp. Переименуйте файл на более короткое имя — windows10.0-kb4056887-x64.msu

Установка MSU файла обновления в Windows

Для запуска установки пакета обновления в Windows достаточно дважды щёлкнуть по скачанному MSU файлу. Если обновление применимо к данному компьютеру, откроется диалоговое окно Автономного установщика обновлений Windows (Windows Update Standalone Installer), в котором нужно подтвердить установку апдейта.

Кроме того, установить msu пакет обновления можно и из командной строки с помощью утилиты wusa.exe.

Для установки обновления в «тихом» режиме (пользователю не будут показываться никакие всплывающие окна) с отложенной перезагрузкой, откройте командную строку с правами администратора и выполните команду:

wusa.exe c:\Temp\windows10.0-kb4056887-x64.msu /quiet /norestart

Через некоторое время убедимся, что обновление установлено успешно, выполнив команду:

wmic qfe list | findstr 4056887

Или найдя в журнале событий Установка (Event Viewer -> Windows Logs -> Setup) запись с Event ID 2 от источника WUSA с текстом:

Как извлечь CAB файл из пакета обновлений MSU

В некоторых случаях, когда служба Windows Update, которую использует утилита wusa, работает некорректно (попробуйте для начала выполнить сброс настроек агента обновления Windows), установить обновление в формате MSU не получается. В этом случае можно вручную распаковать пакет MSU, извлечь из него CAB файл обновления и вручную установить его в системе.

Чтобы распаковать MSU пакет в каталог C:\Temp\kb4056887 (каталог нужно предварительно создать), выполните следующую команду:

expand _f:* “C:\Temp\windows10.0-kb4056887-x64.msu” C:\Temp\kb4056887

Как вы видите в каталоге появилось 4 типа файлов:

  • .xml файл (Windows10.0-KB4056887-x64.xml) — содержит метаданные пакета msu и используется программой Wusa.exe
  • .cab файл (Windows10.0-KB4056887-x64.cab — один или несколько)– непосредственно архив с обновлением Windows
  • *pkgProperties.txt файл (Windows10.0-KB4056887-x64-pkgProperties.txt)– содержит свойства пакета (дата выпуска, архитектура, тип пакета, ссылка на KB и т.д.)

Установка CAB файла обновлений в Windows 10

Установить CAB файл обновления, полученный из MSU пакета можно двумя способами.

Наиболее универсальный способ установки обновления из CAB файл – утилита DISM.exe. Команда установки может быть такой:

DISM.exe /Online /Add-Package /PackagePath:c:\Temp\kb4056887\Windows10.0-KB4056887-x64.cab

Если нужно установить CAB пакет в тихом режиме и подавить запрос на перезагрузку компьютера после установки обнволения, команда DISM будет такой:

start /wait DISM.exe /Online /Add-Package /PackagePath: c:\Temp\kb4056887\Windows10.0-KB4056887-x64.cab /Quiet /NoRestart

В Windows 8 и Windows 7 можно установить обновление через менеджер пакетов Pkgmgr. Команда:
start /w Pkgmgr /ip /m:c:»c:\Temp\kb4056887\Windows10.0-KB4056887-x64.cab»

Примечание. В Windows 10 / Windows Server 2016 менеджер пакетов PkgMgr.exe более не поддерживается. При его запуске появляется предупреждении о необходимости использовать для управления пакетами DISM.exe.

Note: The PkgMgr.exe has been deprecated. Please update your scripts to use dism.exe to extract, install, uninstall, configure and update features and packages for Windows.

Данная инструкция по ручной установке накопительных (если вы не помните что это такое, прочитайте статью про новую модель обновлений Windows систем) и любых других обновлений Windows применима ко всем поддерживаемым версиям ОС: Windows 10 / 8.1 / 7 и Windows Server 2016 / 2012 / R2 / 2008 / R2.

Просто отличный мануал по использованиею MSU и CAB файлов в Windows Update — автору руспект.

Статья хорошая и обновления CAB и MSU распаковываются, устанавливаются без проблем.Однако у меня есть проблема с командами Dism в Windows 7 sp1 Home Premium x 64 .Я установил на Virtual box свой windows чтобы там посмотреть как правильно распаковать msu и cab обновления, чтобы получить пакеты обновлений для добавления в свой iso образ.Пакеты обновлений получил и стал тестировать команды dism.Этот список команд работает без проблем и в логе dism только info есть:
DISM.exe /Get-WimInfo /WimFile:C:\test\images\myimage.wim
DISM.exe /Mount-Wim /WimFile:C:\test\images\myimage.wim /index:2 /MountDir:C:\test\offline
DISM.exe /Get-MountedWimInfo — Проверяет подключенные образы
DISM.exe /Commit-Wim /MountDir:C:\test\offline — Сохраняет изменения образа
DISM.exe /Unmount-Wim /MountDir: /commit — Сохраняет и отключает образ
DISM.exe /Unmount-Wim /MountDir: /discard -отключает образ
DISM.exe /Cleanup-Wim -удаляет ресурсы с поврежденными образами
А вот при использовании команды:
DISM.exe /image:C:\test\offline /LogPath:C:\log\AddPackage.log /LogLevel:2 /Add-Package /PackagePath:C:\packages
В логе AddPackage при каждом успешном добавлении пакета обновления проблема возникает:
Warning DISM DISM Provider Store: PID=3388 Failed to Load the provider: C:\Users\Koks\AppData\Local\Temp\1DFA6FEB-EE3C-444A-B7E4-89A752AD4A9F\PEProvider.dll. — CDISMProviderStore::Internal_GetProvider(hr:0x8007007e)
И так warning возникает при добавлении любых обновлений.
Нужен совет как решить эту проблему.Также хотелось бы узнать из-за чего возникает warning.И интересует будет ли работать корректно мой образ win7 c добавленными пакетами обновлений с указанной выше проблемой.Или лучше пересобрать свой iso образ.

На мой взгляд, раз это всего лишь Warning, то проблем быть не должно.
В любом случае проверьте ваш wim образ с помощью dism /Cleanup-Image /CheckHealth и dism /cleanup-image /RestoreHealth
Вроде бы так:
DISM /Online /Cleanup-Image /RestoreHealth /source:WIM:X:\Sources\Install.wim:1 /LimitAccess

Добрый день. Задача раскидать патчи по компам в домене. Будет ли работать следующая команда. Интересует именно скрипт/команда на wmi /cmd, т.к pshell remote не везде поднят. Спасибо.

============
wmic /node:»pc1″ /user:»admin» /privileges:enable process call create «DISM.exe /Online /Add-Package /PackagePath: c:\kb4012212.cab /Quiet /NoRestart»
============
Пока могу сказать лишь, что почему то не работает. Висит wuauclt.exe в процессах, но патч не ставится…Если не сложно укажите на ошибку.

В данном случае вы хотите установить обновления через cab файлы, а не MSU. Процесс wuauclt.exe при этом не используется. Установка обнвления напрямую в образ пойдет через DISM.
1) Вы предварительно скопировали на все компьютеры cab файл, чтобы он был везде доступен по пути c:\kb4012212.cab
2) Насколько я помню, через DISM можно было добавлять cab пакет даже по сети.
Попробуйте такую команду:
wmic /node:»pc1″ process call create «DISM.exe /Online /Add-Package /PackagePath:\\server1\updates\kb4012212.cab»

А как найти и достать из cab конретную dll?

Файл CAB также можно распаковать как архив, но там нет именно dll файлов. Возможно какая-то инфа есть в .manifes, но врядли. Наверно проще всего сделать снимок системы, установить обовление, скопировать нужную dll и откатить состояние обратно.

В команде expand и на скрине выполнения этой команды есть ошибка: _ вместо —
Должно быть так:
expand -f:* “C:\Temp\windows10.0-kb4056887-x64.msu” C:\Temp\kb4056887

Читайте также:  Windows professional plus download
Оцените статью