C# ошибка в службе Windows

У меня есть следующая ошибка:

 OpenSCManager Failed 5: Access is denied.  

Кто-нибудь может мне помочь? Есть ли другой способ, кроме использования installutil для установки службы Windows?

PS: я использую Visual Studio 2008. Я искал installutil в C:\VisualStudio... но я тоже не могу его найти.

Я нашел исполняемый файл InstallUtil.exe. Я запускаю приложение, и теперь у меня есть ошибка: c:... \ InstallUtil, installLog запрещен. ЗАЧЕМ?

1 ответ

Здесь есть два вопроса:

  1. Для доступа отказано проблема. Скорее всего, у вас нет разрешений. Запустите команду с правами администратора. Это означает, что вы должны быть членом группы администраторов и ваш процесс должен быть повышен, т. Е. Вы должны щелкнуть правой кнопкой мыши -> Запуск от имени администратора, чтобы запустить процесс.

  2. Есть много способов установить сервис. Поскольку вы уже знаете InstallUtil, мне не нужно об этом упоминать.

    • Существует Win32 API, который называется CreateService.
    • Есть утилита командной строки sc.exe - поставляется с ОС по умолчанию
    • Если вы так склонны, вы можете взломать реестр - не так уж сложно восстановить записи инженера в HKLM\System\CurrentControlSet\Service\

Я лично предпочитаю sc.exe. Устанавливает управляемые сервисы просто отлично.

Другие вопросы по тегам