2014-09-18 2 views
1

Я написал службу Windows на C#, она работает в режиме отладки и выпуска на моем рабочем столе, но когда она установлена ​​на сервере, она работает неправильно.Отладка C# Служба Windows без удаленного отладчика

Он запускается и останавливается просто отлично, но код не выполняется. Разрешения, по-видимому, правильно установлены на пути к файлу в виде SYSTEM, это локальная система, которая входит в систему при запуске службы.

У меня установлен удаленный отладчик для VS2013, однако для его использования сервер требует перезагрузки, что не может быть сделано в обозримом будущем, поскольку это может поставить под угрозу другие запущенные службы.

Есть ли способ обойти это, чтобы узнать, что вызывает проблему?

В ответе на вопрос комментариев:

Там регистрируют и записи для отладки, но ни один из кодов не представляется, выполнение поэтому я тупик. Как таковой ни один из кода try/catch не выполняется, одинаковые разрешения безопасности находятся в папках этой службы в качестве других служб, которые работают правильно. Функции Debug.WriteLine не отображаются в пределах DebugView.

+0

Вы можете написать простое консольное приложение, которое будет запускать тот же код, что и служба, для проверки, является ли это кодом в производственной среде или только конкретными правами службы Windows. – Marek

+3

Попробуйте добавить некоторые услуги регистрации в свою службу. – DavidG

+0

_ «Есть ли способ обойти это, чтобы выяснить, что является причиной проблемы?», Запрашивая тестовую среду или добавляя достаточный журнал. – CodeCaster

ответ

0

В конце концов, это отсортировало его - пробовать все мыслимые способы, которые были на других постах.

  1. Удалить сервис.
  2. Удаление Бин и Obj.
  3. Очистить раствор.
  4. Построить решение.
  5. Установить для освобождения.
  6. Вернитесь в Debug.
  7. Повторная установка службы на сервере.
Смежные вопросы