Установите службу Windows "Служба ... не найдена на компьютере '.'." - PullRequest
1 голос
/ 26 апреля 2010

Я пытаюсь создать свою первую службу Windows в C # VS2010 и постепенно узнаю, как мне следует действовать. Но теперь я достиг точки, когда я не могу установить новую версию своего сервиса. Моя программа установки говорит мне

Error 1001. Service MyService was not found on computer '.'. --> The specified service does not exists as an installed service.

Последняя часть сообщения переведена на английский с датского.

Служба не отображается ни в списке служб (services.msc), ни в registry, ни в Add/Remove programs. Я удалил остатки из предыдущей установки, поэтому никаких следов здесь тоже нет. Я удалил временную папку под своей учетной записью Windows.

Где я могу найти оставшиеся останки, мешающие установке службы?

Ответы [ 4 ]

1 голос
/ 26 апреля 2010

Может быть немного не по теме, но ... Установщики MSI для Windows Services известны своими проблемами. Вы только что заново обнаружили одного из них. Из-за того, что один из моих прежних установщиков MSI неправильно сослался на ссылки GAC, мне фактически пришлось посоветовать своим пользователям очистить свои реестры, прежде чем я понял, почему они не могут должным образом удалить мой сервис. Это то, что вы пытаетесь сделать. В общем не круто. Google для "MSI вопросов". Выезд http://installer.codeeffects.com/Default.aspx?HksJ48hGdr=c109 (верхняя точка). Узнайте больше на других форумах. В конце концов, вы найдете решение вашей конкретной проблемы, но путешествие не будет приятным:)

0 голосов
/ 26 апреля 2010

Первоначально вы устанавливали свой сервис с помощью проекта установки или просто использовали ServiceUtil из папки framework? Если вы просто хотите запустить новую версию своего сервиса, это так же просто, как остановить существующий сервис, заменить EXE новым и снова запустить сервис.

Ваш сервис отображается в списке SERVICES.MSC?

0 голосов
/ 26 апреля 2010

Вот как я работаю каждый раз:

Создайте службу и установщик службы, как описано в http://www.15seconds.com/issue/021007.htm,, это кажется старой школой, но шаги такие же в VS 2005, 2008 и 2010.

После того, как вы воспользовались услугой, для ее установки создайте следующий cmd-файл (замените YOURSERVICE на имя вашей службы) и сохраните его в папке bin.

for %%x in (%0) do set BatchPath=%%~dpsx
for %%x in (%BatchPath%) do set BatchPath=%%~dpsx

C:
cd %windir%
cd Microsoft.NET
cd Framework
cd v2*
installutil %BatchPath%YOURSERVICE.exe
NET START  YOURSERVICE

Откройте командную строку и запустите cmd.

Для деинсталляции создайте следующий cmd-файл (замените YOURSERVICE названием вашей службы) и сохраните его в папке bin.

for %%x in (%0) do set BatchPath=%%~dpsx
for %%x in (%BatchPath%) do set BatchPath=%%~dpsx

NET STOP YOURSERVICE
SET ERRORLEVEL=0

c:
cd %windir%
cd Microsoft.NET
cd Framework
cd v2*
installutil -u %BatchPath%YOURSERVICE.exe

Откройте командную строку и запустите cmd.

0 голосов
/ 26 апреля 2010

Вы пробовали Add/Remove Programs? Если вы еще не были там ... вот хорошая статья о том, как создать простой Windows-сервис из MSDN

...