Не удается остановить службу HTTP после установки службы веб-развертывания (Майкрософт)

Проблема
Рассмотрим следующую ситуацию. Выполняется попытка остановить службу HTTP на сервере, на котором работают службы IIS версии 6, 7 или 7.5. На сервере также установлена служба веб-развертывания Майкрософт (MSDEPSVC). При остановке службы HTTP с помощью команды NET STOP HTTP в командной строке отображается следующее сообщение об ошибке:

Идет остановка службы HTTP.....
Не удалось остановить службу HTTP.


При повторном выполнении команды NET STOP HTTP отображается следующее сообщение об ошибке:

Служба запускается или останавливается. Повторите попытку позже.



Причина
Эта проблема возникает потому, что служба веб-развертывания Майкрософт (MSDEPSVC) зависит от службы HTTP, но при первоначальной установке MSDEPSVC эта зависимость не регистрируется диспетчером служб. При выполнении остановки службы HTTP необходимо также остановить ее зависимые службы. Однако служба HTTP не знает, что нужно остановить MSDEPSVC, поскольку эта зависимость не зарегистрирована, и следовательно происходит сбой остановки службы.
Решение
Если для решения проблемы требуется помощь, перейдите к разделу Помощь в решении проблемы. Чтобы решить проблему самостоятельно, перейдите к разделу Самостоятельное решение проблемы.

Помощь в решении проблемы



Чтобы решить проблему автоматически, нажмите кнопку или ссылку Устранить проблему. Затем в диалоговом окне Загрузка файла нажмите кнопку Выполнить и следуйте инструкциям мастера Fix it.




Примечания
  • Мастер может быть доступен только на английском языке. Однако автоматическое решение проблемы можно использовать в версиях Windows на любых языках.
  • Решение Fix it можно загрузить на любой компьютер, а затем сохранить на устройстве флэш-памяти или компакт-диске и запустить на нужном компьютере.

Перейдите к разделу Проблема устранена?



Самостоятельное решение проблемы

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



$bFoundHttp = $false$msdepsvc = Get-Service -name MsDepSvc$reqsvcs = "HTTP"$msdepsvc.ServicesDependedOn | ForEach-Object `{    if($_.Name -eq "HTTP")    {  $bFoundHttp = $true    }    else    {    if($_.Name -ne "") {     $reqsvcs += "/" + $_.Name }    }}if ($bFoundHttp -eq $false){    $status = $msdepsvc.Status    if($status -eq "Running")    { Stop-Service -name MsDepSvc    }        sc.exe config MsDepSvc depend= $reqsvcs    if($status -eq "Running")    { Start-Service -name MsDepSvc    }}


Проблема решена?

Дополнительная информация
Сведения об установке Windows PowerShell 1.0 на сервере Windows Server 2003 см. в следующей статье:

Английская версия установочного пакета для оболочки Windows PowerShell 1.0 для систем Windows Server 2003 и Windows XP
http://support.microsoft.com/kb/926139/ru




Сведения об использовании Windows PowerShell в Windows Server 2003, Windows Server 2008 и Windows Server 2008 R2 см. в следующей статье:

Windows PowerShell
http://technet.microsoft.com/ru-ru/library/bb978526.aspx




Дополнительные сведения о средстве веб-развертывания (Майкрософт) см. в следующей статье:

Web Deploy 2.0
http://www.iis.net/download/WebDeploy

решить устранить
Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.
Свойства

Номер статьи: 2597817 — последний просмотр: 11/22/2011 21:57:00 — редакция: 1.0

Microsoft Internet Information Services 6.0, Microsoft Internet Information Services 7.0, Microsoft Internet Information Services 7.5

  • kbfixme kbmsifixme KB2597817
Отзывы и предложения