Установка программного обеспечения Windows программно
Как установить службу Windows программно, не используя installutil.exe?
- как отложить выключение и запустить процесс в службе windows
- Delphi 2009: Как взаимодействовать между Windows и настольным приложением под Vista?
- Как иметь петлю в службе Windows без использования таймера
- Каков наилучший способ наблюдать за настольным приложением?
- Как создать службу Windows из приложения java
- Служба Windows, не показанная в приложении, удаляет программы под панелью управления
- Ошибка5: доступ запрещен при перезапуске службы журнала событий
- Как служба Windows может запустить процесс при создании события Timer?
Вы можете установить службу, добавив этот код (в файл программы, Program.cs), чтобы установить себя при запуске из командной строки с использованием указанных параметров:
/// /// The main entry point for the application. /// static void Main(string[] args) { if (System.Environment.UserInteractive) { if (args.Length > 0) { switch (args[0]) { case "-install": { ManagedInstallerClass.InstallHelper(new string[] { Assembly.GetExecutingAssembly().Location }); break; } case "-uninstall": { ManagedInstallerClass.InstallHelper(new string[] { "/u", Assembly.GetExecutingAssembly().Location }); break; } } } } else { ServiceBase[] ServicesToRun; ServicesToRun = new ServiceBase[] { new MyService() }; ServiceBase.Run(ServicesToRun); } }
Я использую этот метод из следующей статьи CodeProject, и он отлично работает.
Службы Windows могут устанавливать сами
Я устанавливаю и удаляю свою службу Windows через командную строку, например MyWindowsService.exe -install
и MyWindowsService.exe -uninstall
, чтобы не использовать сам installutil.exe
. Я написал набор инструкций, как это сделать здесь .