Как я могу установить сервис окон на машину, которой не установили Visual Studio?

Единственный способ установить сервис окон, который я знаю, использует "Командную строку Visual Studio 2008 года", Есть ли способ установить сервис окон на машину, которая не имеет установленной Visual Studio (предположите, что версия 2. X .NET установлена.)

28
задан Chris Farmer 8 April 2010 в 12:02
поделиться

9 ответов

вы можете сделать это с помощью installUtil , который находится в папке .net framework (на моем компьютере это C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727).

44
ответ дан 28 November 2019 в 02:38
поделиться

Соответствующая страница MSDN: http://msdn.microsoft.com/en-us/library/sd8zc8ha%28VS.80%29.aspx

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\installutil.exe yourproject.exe

Для этого не обязательно иметь установленную Visual Studio.

7
ответ дан 28 November 2019 в 02:38
поделиться

Вы можете установить службы Windows как MSI. Создайте MSI как обычный проект, прикрепленный к вашему сервисному проекту.

В своем сервисном проекте создайте класс установщика и добавьте компоненты serviceInstaller и serviceProcessInstaller и настройте их, как требуется. Добавьте выходные данные проекта из проекта службы в проект MSI, задайте настраиваемые действия проекта MSI для установки, фиксации, отката и удаления для выходных данных проекта службы.

Измените проект MSI любым другим способом, соберите MSI, после чего вы сможете установить свою Службу на любой компьютер с Windows без VS.NET или с помощью служебного приложения InstallUtil. MSI также будет обрабатывать удаление и т. Д.

. Существуют свойства компонента serviceProcessInstaller, которые вы можете настроить для учетной записи для запуска службы. ServiceInstaller содержит свойства, которые могут быть установлены, например, имя службы. Вам нужно будет установить ServiceName и его Parent, MSDN предоставит хорошую информацию о том, как использовать оба этих компонента.

8
ответ дан 28 November 2019 в 02:38
поделиться

С командной строкой Visual Studio:

installutil /i fullfilepathtoservice.exe

Без командной строки Visual Studio:

C:\WINNT\Microsoft.NET\Framework\v1.1.4322 installutil /i fullfilepathtoservice.exe

HTH.

3
ответ дан 28 November 2019 в 02:38
поделиться

Все, что это делает, - это помещает инструменты платформы .Net в PATH; вы все равно можете использовать: C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ InstallUtil.exe , указав полный путь в обычной командной строке (очевидно, с учетом вашего framework / архитектура ЦП)

2
ответ дан 28 November 2019 в 02:38
поделиться

Да, installutil.exe работает нормально, но мне надоело не забывать запускать командную строку Visual Studio 2008, чтобы использовать ее. Я неизменно открывал обычную консоль только для того, чтобы понять, что расположение installutil.exe не было частью пути.

К счастью, installutil.exe является оболочкой для набора вызовов отражения. Из MSDN

Installutil.exe использует отражение для проверки указанной сборки и поиска всех типов установщика с Для RunInstallerAttribute установлено значение true. Затем инструмент выполняет либо метод установки , либо метод удаления для каждого экземпляра типа установщика .

Это означает, что в службу Windows можно добавить код для ее установки и удаления. Таким образом, мне больше не требуется installutil.exe или командная строка Visual Studio 2008 для его запуска.

Я предоставил пошаговое руководство, как это сделать здесь . Параметр -install устанавливает службу Windows и запускает ее. И наоборот, параметр -uninstall останавливает службу и удаляет ее.

5
ответ дан 28 November 2019 в 02:38
поделиться

Откройте командную строку (cmd) и введите

help sc

и

sc create

Кроме того, файл installutil.exe, о котором вы, вероятно, говорите, действительно находится в каталоге .Net Framework. Командная строка VS просто устанавливает красивый путь, но вы можете запустить его из (моего пути) C:\Windows\Microsoft.NET\Framework\v2.0.50727 просто отлично.

2
ответ дан 28 November 2019 в 02:38
поделиться

Вам не нужен Visual Studio 2008 Command Prompt. Вам нужна программа InstallUtil.exe, которая находится в

C:\Windows\Microsoft.NET\Framework\v2.0.50727

На x64 машинах есть также 64-битная версия в

C:\Windows\Microsoft.NET\Framework64\v2.0.50727

Эти директории, очевидно, доступны только при установленном .NET.

2
ответ дан 28 November 2019 в 02:38
поделиться

Я предполагаю, что вы ищете программу "installutil.exe", которая используется для установки .NET Windows Services. Вы можете найти ее в %windir%\Microsoft.NET\Framework\v2.0.50727

1
ответ дан 28 November 2019 в 02:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: