Windows установка службы install

Служба установщика Windows недоступна

Служба Установщика Windows — один из значимых элементов операционной системы, который нужен для установки программного обеспечения. Эта служба применяет все программы, разработанные для Windows, стало быть, если при установке какой — то программы, Windows Installer вне доступа или просто не отвечает, то установка не совершится.

В большинстве ситуаций, на экране компьютера появляются такие надписи:

Чтобы решить задачу доступа к службе Установщика Windows 7, 8 или 10, есть несколько рабочих способов.

Недоступна служба Установщика Windows 7

Если нет доступа к службе установщика, то необязательно сразу же заниматься переустановкой системы Windows, а лучше — совершить некоторые действия по восстановлению ее рабочих функций. Для начала, нужно выяснить произошел ли запуск данной службы и есть ли она на самом деле.

Для этого предпринимаем следующие действия:

  • нужно открыть список Windows 7 кликом по клавишам Win + R, после чего ввести команду services.msc в окошке «Выполнить»;
  • дальше в списке требуется найти Установщик Windows и 2 раза щелкнуть по нему;

Важно знать, что при запуске Windows Installer выглядит так:

  • конечный этап — включение автоматического запуска службы Установщика Windows (в 7й Windows возможна перемена типа запуска на «Автоматически»), перезагрузка и повторная установка программы.

Если первый способ исправления ошибки 1719 не принес никакого результата, то следует попробовать службу Windows Installer зарегистрировать в системе по — новому, произвести запуск от имени Администратора командной строки.

Для этого потребуется отыскать в стандартных программах командную строку, после чего по ней кликнуть правой стороной компьютерной мышки и выбрать « Запуск от имени Администратора».

Дальше вводимые команды будут зависеть от того, какая версия Windows у вас установлена: 32 – битная или 64 — битная.

Для того, чтобы перерегистрировать службу Установщика Windows в 32 -битной версии, требуется совершить ввод двух команд:

  • первая — msiexec /unregister;
  • вторая — msiexec /register.

Стоит учесть, что после выполнения данных команд обязательно нужно сделать перезагрузку ПК.

Для устранения ошибки в 64 – битной версии нужно ввести последовательно такие команды:

После чего нужно перезагрузить компьютерное устройство. После таких манипуляций ошибка должна убраться.

Недоступна служба Установщика Windows 10

Если возник вопрос о том, как включить службу Установщика Windows 10, то по поводу этого существуют определенные действия, призванные решать данную задачу. Одним из методов решения есть сброс параметров службы Установщика Windows в реестре.

Это происходит таким образом:

  • нужно нажать на клавишу «Пуск» и открыть раздел «Выполнить»;
  • ввод команды regedit;
  • в открывшемся окошке редактора требуется перейти по ветке — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msiserver;
  • проверка соответствия пункта ImagePath со значением — %systemroot%\system32\msiexec.exe /V
  • если показатели имеют отличие, то их нужно уравновесить посредством ввода требуемых параметров в окно данного пункта, открывшееся после нажатия (2 раза) левой стороной компьютерной мыши;
  • запуск службы services.msc.

При 64 – битной версии системы нужно брать во внимание параметр WOW64, чей параметр равняется нулевому значению. При этом, в свойствах обязательно должна быть использована шестнадцатеричная система исчисления.

Читайте также:  Как поставить линукс параллельно виндовс

По окончанию всех манипуляций по изменению реестровых параметров требуется в обязательном порядке сделать перезагрузку компьютера.

Если после всех используемых способов, так и нет доступа к службе Установщика Windows Installer, то можно попробовать радикальный метод по изменению параметров реестра: создание реестрового файла посредством программы Блокнот с последующим запуском файла и обновлением пункта реестра:

  • после нажатия клавиши «Пуск» нужно ввести Блокнот в окошке «Поиск»;
  • открытие файла Notepad.exe в пункте «Программы»;
  • в окно Блокнота нужно вставить скопированный на официальном сайте Майкрософт текст по обновлению реестра;
  • нужно выбрать «Сохранить как» в меню «Файл» и ввести файловое название Msirepair.reg;
  • в окне «Тип файла» необходимо обозначить Все файлы (*.*);
  • в поле «Сохранить» нужно отметить Рабочий стол, а потом непосредственно само действие « Сохранить»;
  • для закрытия Блокнота нужно нажать команду Выход в меню «Файл»;
  • затем на рабочем столе требуется правой клавишей мыши раскрыть файл Msirepair.reg и выбрать раздел «Запуск от имени Администратора». После ввода требуемого пароля нужно нажать «Продолжить»;
  • после предложения установки разделов реестра нужно кликнуть по пункту «Да»;
  • переустановка требуемой программы.

Стоит учитывать, что при использовании этого метода, происходит изменение реестра. Чтобы при данном действии не возникли критические проблемы, всю процедуру сброса параметров нужно проводить строго по инструкции. Также рекомендуется создать резервную копию реестра, как дополнительное средство защиты данных. Это делается для возможности воссоздания реестра после серьезных неполадок.

Удаление устаревшей версии

В некоторых случаях, запустить службу Установщика Windows нельзя из-за присутствия устаревшей версии. Ее нужно удалить. Это делается посредством перехода по дорожке «Пуск» — «Панель управления» — «Программы». В последнем пункте требуется найти «Удалить / Изменить программу» и воспользоваться ею для необходимого ярлыка. В результате, как обычно, нужно сделать перезагрузку и повторную установку системы.

Если в конечном итоге служба Windows Installer все-таки не запускается, то необходимо сделать чистую установку ОС Windows. Следует учесть, что перед переустановкой системы нужно сохранить всю полезную информацию на любое внешнее устройство хранения данных, во избежание потери данных.

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

Не утихают споры о том, что лучше Windows 10 или Windows 7. Такое явление не является случайным. Разработчики из Майкрософта уверяют, что лучше, чем Windows 10 ничего не найти, а опытные пользователи говорят наоборот, мол надёжнее системы, чем Windows 7 сейчас.

Частые перезагрузки компьютера могут привести к повреждению жесткого диска. Если вам приходится отлучаться от.

Программа установки службы

Любая служба должна конфигурироваться в системном реестре. Все службы размещаются в разделе HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services. Просматривать содержащиеся в системном реестре записи можно с помощью утилиты regedit. Здесь содержатся сведения о типе службы, ее отображаемом имени, пути к ее исполняемому файлу, конфигурации запуска и т.д.. На рисунке для примера показано, как в системном реестре выглядит конфигурация службы W3SVC:

Читайте также:  Как сделать ярлык для сканирования windows

Подобная конфигурация может обеспечиваться с помощью классов установщиков из пространства имен System.ServiceProcess.

Чтобы добавить к службе программу установки, необходимо переключиться на представление визуального конструктора в Visual Studio и выбрать в контекстном меню пункт Add Installer (Добавить установщик). В результате создается новый класс ProjectInstaller, а также экземпляры классов ServiceInstaller и ServiceProcessInstaller.

Класс Installer

Класс ProjectInstaller унаследован от System.Configuration.Install.Installer. Этот класс является базовым для всех специальных установщиков. С помощью класса Installer можно создавать процедуры установки, основанные на транзакциях. В случае неудачного завершения такой процедуры становится возможным откат до предыдущего состояния и отмена всех изменений, которые были проведены после начала процедуры.

Внутри конструктора класса ProjectInstaller вызывается метод InitializeComponent():

Классы ProcessInstaller и ServiceInstaller

Внутри кода реализации InitializeComponent() создаются экземпляры классов ServiceProcessInstaller и ServiceInstaller. Оба этих класса унаследованы от ComponentInstaller, который, в свою очередь, унаследован от класса Installer.

Классы, унаследованные от ComponentInstaller, могут использоваться для настройки процесса установки. Не следует забывать о том, что процесс службы может предусматривать запуск более чем одной службы. Класс ServiceProcessInstaller может применяться для настройки процесса, который будет отвечать за определение значений для всех запускаемых внутри данного процесса служб, а класс ServiceInstaller — для настройки каждой из этих служб, т.е. для каждой службы должен применяться отдельный экземпляр ServiceInstaller. При наличии трех запускаемых внутри процесса служб потребуется добавить, соответственно, три экземпляра ServiceInstaller.

Здесь видно, что ServiceProcessInstaller производит установку программы, которая реализует класс ServiceBase. Класс ServiceProcessInstaller имеет свойства, предназначенные для всего процесса. Ниже приведено краткое описание этих свойств, к которым предоставляется доступ всем службам внутри процесса:

Username, Password

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

Account

Позволяет указывать тип учетной записи службы.

HelpText

Представляет собой доступное только для чтения свойство, которое возвращает справочный текст относительно установки имени пользователя и пароля.

Процесс, применяемый для запуска службы, может быть определен в свойстве Account класса ServiceProcessInstaller с использованием перечисления ServiceAccount. Ниже приведено краткое описание всех значений, которые могут устанавливаться для свойства Account.

ServiceInstaller — это класс, который необходим всем службам. Для каждой службы внутри процесса он поддерживает следующие свойства: StartType, DisplayName, ServiceName и ServicesDependedOn. Краткое описание этих свойств приведено ниже:

LocalSystem

Установка этого значения указывает, что служба должна использовать высоко привилегированную учетную запись пользователя в локальной системе и выступать в роли компьютера в сети.

NetworkService

Подобно LocalService, это значение указывает, что учетные данные компьютера должны передаваться удаленным серверам, но в отличие от LocalSystem, оно подразумевает, что в локальной системе служба должна действовать от имени непривилегированной учетной записи пользователя. Как нетрудно догадаться по названию, это значение должно применяться только для тех служб, которые нуждаются в доступе к сетевым ресурсам.

Читайте также:  Следующая операционная система после windows 10

LocalService

Это значение указывает, что любому удаленному серверу должны предоставляться анонимные учетные данные и служба должна обладать в локальной системе теми же привилегиями, что и служба NetworkService.

User

Установка для свойства Account значения ServiceAccount.User означает, что пользователь может определять учетную запись, которая должна использоваться в данной службе.

StartType

Свойство StartType указывает, должна служба запускаться вручную или автоматически. Возможные значения: ServiceStartMode.Automatic, ServiceStartMode.Manual, ServiceStartMode.Disabled. В случае установки для этого свойства значения ServiceStartMode.Disabled служба запускаться не будет. Такой вариант может быть удобен для тех служб, которые не должны запускаться в системе. Например, установка данного свойства в Disabled может потребоваться, если какой-то аппаратный контроллер не доступен.

DelayedAutoStart

В случае если для свойства StartType установлено не Automatic, это свойство игнорируется. Оно указывает, должна ли служба запускаться не сразу же после загрузки системы, а немного позже. Это свойство появилось в .NET 4 и поддерживается, начиная с Windows Vista.

DisplayName

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

ServiceName

Это свойство указывает, как должно вообще выглядеть имя службы. Его значение должно совпадать со значением ServiceName внутри класса ServiceBase в программе службы. Именно с его помощью конфигурация ServiceInstaller будет ассоциироваться с требуемой программой службы.

ServicesDependentOn

Это свойство указывает, какой набор служб должен запускаться перед запуском данной службы. Благодаря ему, при запуске службы сначала будут автоматически запускаться указанные зависимые службы и только потом сама служба.

Изменив имя службы в унаследованном от ServiceBase классе, не забудьте изменить и значение свойства ServiceName в объекте ServiceInstaller!

На стадии тестирования лучше устанавливать для свойства StartType значение Manual. Тогда при невозможности остановить службу (например, из-за присутствия в ней дефекта) перезапустить систему все равно будет получаться. В случае установки для StartType значения Automatic служба будет автоматически запускаться снова даже после перезагрузки системы. Удостоверившись, что служба действительно работает корректно, значение этого свойства можно будет легко поменять.

Класс ServiceInstallerDialog

Еще одним классом установщика в пространстве имен System.ServiceProcess.Design является ServiceInstallerDialog. Этот класс можно применять, если необходимо, чтобы во время установки службы системный администратор вводил имя пользователя и пароль учетной записи, которая должна для нее использоваться. Если установить свойство Account класса ServiceProcessInstaller в ServiceAccount.User, а свойства Username и Password — в null, то во время процесса установки на экране будет отображаться диалоговое окно Set Service Login (Установить регистрационную информацию для службы). В этом окне также есть возможность отменить процесс установки.

Утилита installutil

После добавления классов установщиков в проект с помощью утилиты installutil.ехе можно попробовать установить и удалить службу. Эта утилита позволяет производить установку любой сборки, которая имеет класс Installer. Для выполнения установки он вызывает метод Install() класса, унаследованного от Installer, а для удаления ранее установленной сборки — соответственно, метод Deinstall().

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

Оцените статью