Служба Windows не запускается с общей ошибкой
Я написал тривиальный сервис NT, используя VS2010, и он отлично устанавливается на моем XPSP3 dev box, используя InstallUtil. Однако когда я бегу net start TestService
Я получаю общую ошибку:The TestService service failed to start due to the following error:
The system cannot find the path specified.
Эта же ошибка также записывается в журнал событий системы, к сожалению, без подробной информации о том, какой путь указан net start
не понравилось Так что я запустил Filemon, но, к счастью, ни один из результатов не смог пролить свет на мой сбойный сервис.
Служба работает под учетной записью Local Service.
Любые советы по устранению этой проблемы?
РЕДАКТИРОВАТЬ: Спасибо всем за советы. DLL были в порядке, ловить блоки не включается, я должен был попытаться / поймать блоки вокруг InitializeComponent
, а также OnStart
методы. Нижеприведенные утверждения о проверке пути были предупреждением. Я сделал очевидную ошибку, я бежал InstallUtil
на моем бинарном диске с диска SUBST, который по какой-то причине сообщил об успехе. Бег InstallUtil
из локального пути исправлена моя проблема, теперь служба запускается корректно.
2 ответа
Сначала убедитесь, что служба установлена правильно, используя sc qc TestService
Убедитесь, что это полный путь (начиная с буквы диска), и попробуйте запустить исполняемый файл из командной строки.
Если вышеперечисленное работает, я бы попробовал проверить разрешения для исполняемого файла.
Если ваш файл… bin\Release\xxxmyprojxxx.exe находится на сетевом диске (даже если он сопоставлен с буквой диска), он НЕ будет запускаться с "Системная ошибка 2 ... система не может найти указанный файл"
Поэтому скопируйте каталог с exe-файлом (который, как мы надеемся, включает в себя любые зависимости) на локальный диск на машине (san или внутренний диск), а НЕ на подключенный сетевой ресурс / диск.