Ответ 1
Чтобы заставить его работать, мне нужно было добавить разрешения для выходной папки bin\debug для моего сервисного проекта.
У учетной записи локальной службы не было разрешений на выходной файл .exe, и именно поэтому произошла ошибка.
Когда я пытаюсь запустить службу, созданную в Visual Studio, я получаю следующую ошибку:
System error 5 has occurred.
Access is denied.
Я запускаю командную строку с повышенными привилегиями, поэтому это не проблема. Есть ли место, где я могу посмотреть, какая ошибка происходит.
Чтобы заставить его работать, мне нужно было добавить разрешения для выходной папки bin\debug для моего сервисного проекта.
У учетной записи локальной службы не было разрешений на выходной файл .exe, и именно поэтому произошла ошибка.
Была та же проблема.
Исправлено запуском службы в разделе "Локальная системная учетная запись"
В моем случае решение было даже так просто: запустить командную строку как администратор.
Я вижу, что вы исправили проблему; но на самом деле вы, как правило, не должны запускать службу из папки bin проекта, - файлы должны быть размещены где-то независимо от проекта и профиля (например, в файлах программ). Для целей отладки (когда он будет находиться в папке bin) вы можете определить, является ли это службой в Main()
, и если он запускается в интерактивном режиме, просто запускайте служебный код напрямую, а не обычную настройку запуска обслуживания.
Вы можете обнаружить либо путем добавления аргумента командной строки, либо вы можете попробовать проверить Environment.UserInteractive
.
Учетная запись "Локальные службы", похоже, не имеет привилегий для управления службой. Таким образом, в сервисе LogOn Property измените тип учетной записи на локальную систему и позвольте службе взаимодействовать с рабочим столом.
Кроме того, убедитесь, что вы устанавливаете службу с помощью instalutil в качестве администратора.
Наконец, когда вы хотите запустить службу из командной строки с помощью команды "net start [service name]", вы должны запустить командную строку в качестве администратора.
У меня была такая же проблема, потому что мой проект и его исходный код были в папке с файловой системой NTFS Encrypting File System (
У меня была такая же проблема, когда я перенесла службу с vs05 на vs2010, начиная с фрейм 2.0 до версии 4.0. Мне отказали в доступе. Как только переход на фреймворк 2.0 снова сработал. %?% #% &% & проблема заключалась в том, что строка инициализации для службы была неправильной (?!). Строка ожидаемых котировок в начале и в конце!
До того, как.... путь + имя службы ""/parameter = 1 ', это работало с фреймворком 2.0
После... "путь + имя службы" "/parameter = 1"
Access Denied не имеет ничего общего с этой проблемой. Почему не "путь не найден" или "отсутствующий параметр"
Запустите его из Планировщика заданий с наивысшими привилегиями, и он будет работать.
Учетная запись пользователя с правами администратора подскажет: "Вы уверены?" в ситуациях, когда учетная запись администратора не запрашивается. У меня была эта проблема с net stop netprofm.
Чтобы удалить запрос, сделайте это.
Панель управления, Учетные записи пользователей, Изменение настроек контроля учетных записей пользователей, никогда не уведомляйте
Кажется, что учетная запись пользователя с правами администратора имеет такое же поведение, что и учетная запись администратора.
Просто столкнулся с этой проблемой после того, как я запустил "sc config", чтобы изменить binPath службы.
Единственное исправление, которое сработало для меня, - это "sc удалить" службу и установить ее снова.
После этого все отлично сработало.