Upd: English version of the article: Windows 7: Windows Installer troubleshooting.


Шаг 1: Проверка сервиса Установщика Windows.

1. Нажмите кнопку Пуск | Start.
2. В поле поиска введите services.msc.
3. В списке результатов кликните правым кликом на services.msc.
4. В открывшемся меню выберите Запуск от имени администратора | Run as administrator.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 1

5. В открывшемся окне прокрутите вниз список служб и найдите Установщик Windows | Windows Installer. Дважды щелкните на нем.
6. На вкладке Общие | General в группе Состояние | Service status проверьте, запущена ли служба.
7. Если служба не запущена, нажмите кнопку Запустить | Start.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 2

8. Убедитесь, что теперь служба запущена.
9. Нажмите кнопку OK.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 3

Шаг 2: Перерегистрация Установщика Windows.

1. Нажмите кнопку Пуск | Start.
2. В поле поиска введите MSIEXEC /UNREGISTER и нажмите Enter.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 4

3. Снова нажмите Пуск | Start.
4. В поле поиска введите MSIEXEC /REGSERVER и нажмите Enter.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 5

Дисклеймер. Следующие шаги связаны с редактированием реестра. Будьте очень внимательны, поскольку некорректное конфигурирование параметров реестра может привести к серьезным проблемам в системе вплоть до выхода ее из строя. Изменение этих параметров вы выполняете на свой страх и риск.

Шаг 3: Очистка подвешенных процессов установки.

1. Нажмите кнопку Пуск | Start.
2. В поле поиска введите команду regedit и нажмите Enter.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 6

3. Перейдите в раздел реестра: HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Installer \ InProgress. Если раздел InProgress отсутствует, переходите к пункту 5.
4. Удалите все параметры в этом разделе. Если раздел не содержит параметров, переходите к следующему пункту.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 7

5. Перейдите в раздел реестра: HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager \ PendingFileRenameOperations. Если раздел PendingFileRenameOperations отсутствует, переходите к следующему шагу.
6. Удалите все параметры в этом разделе. Если раздел не содержит параметров, переходите к следующему шагу.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 8

Шаг 4: Проверка прав доступа.

1. Перейдите в раздел реестра: HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Installer.
2. Кликните правой кнопкой мыши на заголовке раздела и в открывшемся меню выберите пункт Разрешения | Permissions.
3. В открывшемся диалоговом окне в категории Группы или пользователи | Group or user names кликните на пункт SYSTEM.
4. В категории Разрешения для группы | Permissions for убедитесь, что система имеет полный контроль над разделом.

ogri.me | Windows 7: Устранение неполадок Установщика Windows - 9

После выполнения всех шагов перезагрузите компьютер.

Комментарии  

Роман
+17 # Роман 30.03.2014 14:03
Доброго времени. Хотелось бы к данной статье кое что добавить.
Пойдя по этому пути я запоролся на пункте №1 сразу же, потому как Windows Installer (мать его!) в службах не числился и дальнейшие манипуляции стали бессмысленны. Тогда я, немного поковырявшись в интернете, сделал следущее:
открол командную строку от имени администратора и ввел последовательно команды, нажимая после каждой из них enter:

msiexec /unreg

msiexec /regserver

net stop msiserver

regsvr32 /u /s %windir%\System32\msi.dll

regsvr32 /u /s %windir%\System32\msihnd.dll

regsvr32 /u /s %windir%\System32\msisip.dll

regsvr32 /s %windir%\System32\msi.dll

regsvr32 /s %windir%\System32\msihnd.dll

regsvr32 /s %windir%\System32\msisip.dll

net start msiserver

Перезагрузил компьютер -- и ву аля!!!! Installer вернулся =)
Надеюсь этот метод кому-нибудь ещё поможет.
Ответить | Ответить с цитатой | Цитировать
Ogri
+3 # Ogri 15.04.2014 23:05
Роман, поздновато реагирую, но все равно спасибо за каммент. Почему у вас мать его перемать инсталлер не в службах - это очень странно. Возможно, он уже и не в них после многочисленных апдейтов Windows 7, вышедших после даты, когда я делал этот пост, а это почти полтора года. Надо бы проверить, но нет времени, да и не глючило это у меня лично давненько. Глюканет - ваш метод будет первым для проверки. Спасибо!
Ответить | Ответить с цитатой | Цитировать
Саша
-1 # Саша 01.10.2014 09:44
Роман, огромное спасибо! все получилось. целую неделю не мог справиться с этой проблемой, уже все перепробовал и ни чего не помогло, пока не набрел на вашу статью, все заработало, установщик включился ура...! В общем огромное спасибо!
Ответить | Ответить с цитатой | Цитировать
AlexSimonoff
+1 # AlexSimonoff 08.03.2015 12:08
Роман, спасибо тебе большое, за помощь, все заработало. :-)
Ответить | Ответить с цитатой | Цитировать
Jekan4ik2015
-4 # Jekan4ik2015 23.03.2015 10:37
Рома спасибо огромное просто спасибо :-|
Ответить | Ответить с цитатой | Цитировать
Алекс
+7 # Алекс 18.08.2014 14:48
После ввода в командную строку net stop msiserver выдаёт , что неправильное имя службы
Ответить | Ответить с цитатой | Цитировать
Ogri
-5 # Ogri 18.08.2014 16:48
Я правильно понимаю, что речь о Windows 7? Если да, то какая у вас редакция (edition)?
Ответить | Ответить с цитатой | Цитировать
Артём
-1 # Артём 19.06.2015 10:20
У меня такая же ошибка как и у Алекса
Версия: 6.1.7601 Service Pack 1 Сборка 7601
Ответить | Ответить с цитатой | Цитировать
aaalekseyyy
+2 # aaalekseyyy 09.11.2014 15:36
Роман написал правильно, просто хочу его дополнить для 64-битных систем:

%windir%\System32\msiexec /unreg
%windir%\SysWOW64\msiexec /unreg
%windir%\System32\msiexec /regserver
%windir%\SysWOW64\msiexec /regserver
net stop msiserver
regsvr32 /u /s %windir%\System32\msi.dll
regsvr32 /u /s %windir%\System32\msihnd.dll
regsvr32 /u /s %windir%\System32\msisip.dll
regsvr32 /s %windir%\System32\msi.dll
regsvr32 /s %windir%\System32\msihnd.dll
regsvr32 /s %windir%\System32\msisip.dll
regsvr32 /u /s %windir%\SysWOW64\msi.dll
regsvr32 /u /s %windir%\SysWOW64\msihnd.dll
regsvr32 /u /s %windir%\SysWOW64\msisip.dll
regsvr32 /s %windir%\SysWOW64\msi.dll
regsvr32 /s %windir%\SysWOW64\msihnd.dll
regsvr32 /s %windir%\SysWOW64\msisip.dll
net start msiserver
Ответить | Ответить с цитатой | Цитировать
Влада
-2 # Влада 02.12.2015 06:54
Спасибо вам ОГРОМНЕЙШЕЕ!Я не могу уже пять дней запустить желаемую программу.А когда я все это ввела у меня было написано,что служба установщик виндовс запущен
Ответить | Ответить с цитатой | Цитировать
aaalekseyyy
+2 # aaalekseyyy 09.11.2014 16:05
Извините, немного ошибся, так как есть 32-битный regsvr32.exe в папке %windir%\System32 и 64-битный regsvr32.exe в папке %windir%\SysWOW64 (это разные regsvr32.exe, так как у них разные хеш-суммы).

Поэтому правильно будет так:

%windir%\System32\msiexec /unreg
%windir%\SysWOW64\msiexec /unreg
%windir%\System32\msiexec /regserver
%windir%\SysWOW64\msiexec /regserver
net stop msiserver
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msisip.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msisip.dll
net start msiserver
pause

Может кому и пригодится для 64-битных систем, которые сейчас становятся основными, потому что все новые компьютеры продаются практически только с 64-битными системами.
Ответить | Ответить с цитатой | Цитировать
Ogri
-3 # Ogri 14.11.2014 16:46
aaalekseyyy, спасибо за дополнение! Вы не могли бы уточнить, к каким версиям и редакциям Windows применим скрипт?
Ответить | Ответить с цитатой | Цитировать
Gennady
-1 # Gennady 12.01.2015 08:10
Цитирую aaalekseyyy:
Извините, немного ошибся, так как есть 32-битный regsvr32.exe в папке %windir%\System32 и 64-битный regsvr32.exe в папке %windir%\SysWOW64 (это разные regsvr32.exe, так как у них разные хеш-суммы).

Поэтому правильно будет так:

%windir%\System32\msiexec /unreg
%windir%\SysWOW64\msiexec /unreg
%windir%\System32\msiexec /regserver
%windir%\SysWOW64\msiexec /regserver
net stop msiserver
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msisip.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msisip.dll
net start msiserver
pause

Может кому и пригодится для 64-битных систем, которые сейчас становятся основными, потому что все новые компьютеры продаются практически только с 64-битными системами.

Спасибо.Помогло
Ответить | Ответить с цитатой | Цитировать
Nextovoy
-1 # Nextovoy 15.03.2015 04:50
Цитирую aaalekseyyy:
Извините, немного ошибся, так как есть 32-битный regsvr32.exe в папке %windir%\System32 и 64-битный regsvr32.exe в папке %windir%\SysWOW64 (это разные regsvr32.exe, так как у них разные хеш-суммы).

Поэтому правильно будет так:

%windir%\System32\msiexec /unreg
%windir%\SysWOW64\msiexec /unreg
%windir%\System32\msiexec /regserver
%windir%\SysWOW64\msiexec /regserver
net stop msiserver
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msisip.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msisip.dll
net start msiserver
pause

Может кому и пригодится для 64-битных систем, которые сейчас становятся основными, потому что все новые компьютеры продаются практически только с 64-битными системами.

Новый вид проблем в вашу коллекцию: В system32 msiexec есть. А вот в SysWOW64 его нет. Там нашелся только файлик msiexec.exe.mui размером в ~2КБ. Поэтому запоролся с выполнением скрипта на второй строчке. Сама служба есть, нормально включается, права доступа нужные есть. Вопрос только, куда делся файл? До этого проблем не было, но с ноутбуком происходили некоторые манипуляции без моего ведома, а с моим ведомом происходила установка второй версии Microsoft Office, а именно 2013, поверх 2007. 2013 работала без нареканий, чего не могу сказать о 2007, каждый раз чтобы открыть документ в 2007, приходилось ждать какой-то непонятной установки компонентов, потом выскакивала ошибка, не помню уже какая, и MSOffice 2007 запускался, можно было спокойно редактировать документ. Потом пришлось полностью удалять и 2013 и 2007, чтобы оставить в рабочем состоянии 2007 при повторной его установки. Между этими делами, компьютер прервали на этапе установки обновлений. Пришлось делать восстановление системы до того состояния, в котором я уже удалил и 2013 и 2007 MSOffice(Ну это всё так, к слову). Ну и вопрос: что мне сделать, чтобы установщик Windows снова нормально заработал? Каждый раз при попытке установить нужную программу установщик выдает ошибку 1719.
Ответить | Ответить с цитатой | Цитировать
Ogri
-1 # Ogri 16.03.2015 17:41
aaalekseyy, судя по цитате, это к вам вопрос. Ответите?
Ответить | Ответить с цитатой | Цитировать
Nextovoy
-2 # Nextovoy 04.04.2015 03:29
Судя по всему, не ответит ещё долго. Надеюсь на вашу помощь.
Ответить | Ответить с цитатой | Цитировать
Nikolay
-1 # Nikolay 07.04.2015 08:32
Цитирую aaalekseyyy:
Извините, немного ошибся, так как есть 32-битный regsvr32.exe в папке %windir%\System32 и 64-битный regsvr32.exe в папке %windir%\SysWOW64 (это разные regsvr32.exe, так как у них разные хеш-суммы).

Поэтому правильно будет так:

%windir%\System32\msiexec /unreg
%windir%\SysWOW64\msiexec /unreg
%windir%\System32\msiexec /regserver
%windir%\SysWOW64\msiexec /regserver
net stop msiserver
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /u /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /u /s %windir%\SysWOW64\msisip.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msi.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msihnd.dll
%windir%\System32\regsvr32.exe /s %windir%\System32\msisip.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msi.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msihnd.dll
%windir%\SysWOW64\regsvr32.exe /s %windir%\SysWOW64\msisip.dll
net start msiserver
pause

Может кому и пригодится для 64-битных систем, которые сейчас становятся основными, потому что все новые компьютеры продаются практически только с 64-битными системами.

Cпасибо большое за команду!!! целый день бился головой что только не делал,но теперь все очень хорошо, хоть могу анти вирус установить))) еще раз спасибо,
Ответить | Ответить с цитатой | Цитировать
aaalekseyy
0 # aaalekseyy 15.11.2014 14:43
Ко всем 64-битным версиям Windows 7.
Для 32-битных версий достаточно того, что написал Роман.
Ответить | Ответить с цитатой | Цитировать
Ogri
-1 # Ogri 16.11.2014 00:56
На 8.1 не тестили?
Ответить | Ответить с цитатой | Цитировать
aaalekseyyy
-1 # aaalekseyyy 16.11.2014 04:45
На Winndows 8.1 не тестил, еще не ломалась.
В принципе механизм одинаковый, что для ХР, что для 7, что для 8.1.
Может только добавится регистрация какой-то новой DLL, или отмениться старой. Хотя для инсталлера, я думаю, это вряд ли, здесь их всего три. Так что, думаю на 95%, подойдет.

Вот для Windows Update (их там в несколько раз больше, чем при регистрации инсталлера) карта DLL при переходе от ХР к 7 немного меняется, появляется несколько новых DLL и исчезает несколько старых.
Ответить | Ответить с цитатой | Цитировать
Ogri
-1 # Ogri 19.11.2014 14:18
aaalekseyyy, еще раз спасибо! Жду с нетерпением возникновения глюков установщика на своих или клиентских компах, чтобы потестить скрипт :lol:
Ответить | Ответить с цитатой | Цитировать
aaalekseyyy
-1 # aaalekseyyy 20.11.2014 19:23
Этот скрипт, лекарство от мелких неполадок инсталлера. При больших поломках нужна уже переустановка инсталлера. Бывают очень серьезные повреждения ОС, при которых не помогает и переустановка, т. к. она всегда будет завершаться сбоем установки (один раз такой случай был). Тогда поможет только переустановка ОС.
Ответить | Ответить с цитатой | Цитировать
Ogri
-1 # Ogri 21.11.2014 13:07
Причем переустановка ПОВЕРХ, с сохранением приложений. Ни разу не подводила.
Ответить | Ответить с цитатой | Цитировать
aaalekseyyy
-1 # aaalekseyyy 21.11.2014 17:43
Если полностью установить на Windows 7 SP1 все обновления, а их будет порядка 150, то переустановка поверх уже не пойдет, выдаст ошибку, потому что с этими 150 обновлениями уже обновилось до другой версии ядро системы и множество других системных файлов. Помогло бы Windows 7 SP2, но Майкрософт его не делает. Так что в случае тяжелой невосполнимой поломки инсталлера остается 2 варианта: или установка без сохранения новой Windows 7 SP1, или установка с сохранением поверх, но уже Windows 8 . Или Windows 8.1. Или Windows 10.
Ответить | Ответить с цитатой | Цитировать
Ogri
-1 # Ogri 06.12.2014 22:44
Переустановка поверх пойдет, если устанавливать с последнего на момент дистрибутива.
Ответить | Ответить с цитатой | Цитировать

Добавить комментарий


© 2011-2017 ogri.me
Использование и перепечатка материалов сайта разрешены и приветствуются. Прямая индексируемая ссылка на используемую статью или, на худой конец, на сам сайт была бы хорошей наградой автору за его нелегкий труд.