Завершение работы службы поддержки Windows завершено
Когда я пытаюсь установить службу Windows:
c:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil
Я получаю, что выглядит, некоторые сообщения о успехе и некоторые сообщения об ошибках. Часть пути вниз:
An exception occurred during the Install phase.
System.ComponentModel.Win32Exception: The specified service has been marked for deletion
В конце:
The Rollback phase completed successfully.
The transacted install has completed.
The installation failed, and the rollback has been performed.
Службе предоставляется запись в апплете "Службы", но она помечена как "Отключено". Когда я пытаюсь изменить его в другое состояние, я получаю сообщение об ошибке "помечено для удаления".
В журнале событий нет сообщений. Нет ничего полезного в файле журнала, созданного installutil.exe(я считаю, что он написан в текущем рабочем каталоге).
У меня нет никакого направления, чтобы пойти с этим. Что мне делать?
Ответы
Ответ 1
Оказывается, что установка может или, вероятно, произойдет, если эта служба будет выделена в апплете Services. Безопасно просто закрыть апплет Services, установить службу, а затем повторно открыть апплет Services. Это действительно глупо.
Кроме того, не забудьте запустить консоль как администратор.
Ответ 2
Я испытал то же самое, и проблема для меня заключалась в том, что служба с тем же именем уже установлена. Поэтому для установки новой службы мне пришлось удалить старые службы. Я изучаю, как создавать и настраивать службы Windows и, таким образом, именовать конфликтующими. Сначала попробовал удалить службу:
c:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil -u servicename.exe
Как только этот оператор будет успешно выполнен, установите свою службу, и она будет успешной без отката.
Ответ 3
Несколько раз это происходит из-за проблем с разрешениями.
Запустите "Командная строка разработчика для VS 2012" в качестве администратора.
Тогда это сработает.
Ответ 4
Добавьте еще несколько проверок и пунктов, чтобы решить эту проблему.
- Создайте сервис в режиме деблокирования и возьмите файлы папок релиза и сохраните их в другом пути.
- Скопируйте этот путь и перейдите в окно командной строки визуальной студии и выполните эту следующую команду образца, чтобы установить службу.
- Закройте окно services.msc, если оно открыто, затем запустите C: Program Files (x86)\Microsoft Visual Studio 11.0 > InstallUtil.exe C:\RunLocationServices\TestService.exe
- Перейдите в services.msc и выберите эту службу и нажмите кнопку "Пуск", если она изменилась на "запущена", тогда ваша служба работает нормально.
Тем не менее, если проблема существует,
Другая контрольная точка и решение Когда служба запускается, служба связывается с диспетчером управления службами, как долго должен запускаться сервис (период тайм-аута для службы). Если диспетчер управления службами не получает уведомление об услуге, запущенном службой в течение этого периода тайм-аута,
диспетчер управления службами завершает процесс, в котором размещается служба.
Этот тайм-аут обычно составляет менее 30 секунд.
Если вы не настроите этот период ожидания, диспетчер управления службами завершает процесс. Чтобы настроить этот период ожидания, выполните следующие действия:
1. Чтобы начать > Выполнить > и введите regedit
2.Найти в: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
Выбрав выбранную папку управления, щелкните правой кнопкой мыши в панели справа и выберите новое значение DWORD
3.Назовите новый DWORD: ServicesPipeTimeout
4. Щелкните правой кнопкой мыши ServicesPipeTimeout и выберите команду Изменить. Нажмите "Десятичный", введите "180000" и нажмите "ОК".
5. Перезагрузите компьютер.
Тем не менее, если проблема существует, тогда проблема в вашем служебном коде может возникнуть из-за ваших методов/классов вызова службы. Просмотрите код каждой строки.
Ответ 5
Эта проблема связана с безопасностью, вам лучше открыть командную строку разработчика для VS 2012:
RUN КАК АДМИНИСТРАТОР
и установите свою услугу. Это наверняка устранит вашу проблему.
Я попытался, и проблема была решена.
Ответ 6
Щелкните правой кнопкой мыши по командной строке и выберите RUN AS ADMINISTRATOR
Затем скопируйте и вставьте: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe C:\TestService\bin\Debug\TestService.exe
Результат в TestService.InstallLog:
Installing service TestService...
Service TestService has been successfully installed.