Присоединение отладчика Visual Studio к службе Windows - «прикрепить» серым цветом - PullRequest
39 голосов
/ 10 сентября 2010

Я пытаюсь подключиться к службе Windows с помощью Visual Studio 2010 → Отладка Присоединить к процессу команда.Когда я прокручиваю список процессов, моя служба Windows неактивна, а кнопка присоединения также неактивна.

Я попытался изменить учетную запись службы на локальную службу, учетную запись и т. Д., Но она остается серой.из.Есть ли способ решить эту проблему?

Ответы [ 9 ]

61 голосов
/ 10 сентября 2010

У меня обычно та же проблема, и я забочусь об этом, добавив логическое значение в мою конфигурацию, которое запускает запуск отладки.Вы можете запустить экземпляр отладчика Visual Studio, который подключается к процессу службы Windows, вызвав это:

System.Diagnostics.Debugger.Launch();

Приятно, что вы можете вызывать его везде, где хотите в своем коде.

39 голосов
/ 16 ноября 2011

В Visual Studio 2010 в диалоговом окне «Присоединение к процессу» установите флажки внизу, в которых указано « Показать процессы всех пользователей » и « Показать процессы во всех сеансах». '.

После этого я обнаружил, что мой процесс отображается дважды: один работает под System , а другой - под моим локальным логином Windows.Я не уверен, почему (любой вход по этому поводу был бы великолепен!), Но я смог подключиться к не серому, который появился, а также смог пройтись по моему коду таким образом.

Вторым был процесс servicename.vshost.exe, как указал Оз в комментариях.

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

7 голосов
/ 09 августа 2013

Я должен был не только установить флажки show processes from all users и show processes in all sessions;Мне также пришлось нажать кнопку Select, а затем выбрать код Managed.

enter image description here

2 голосов
/ 20 августа 2016

После установки службы Windows запустите ее. Затем в Visual Studio откройте окно Присоединить к процессу ( Alt + Ctrl + P ), найдите свой процесс, выберите его и нажмите Кнопка присоединения внизу окна.

2 голосов
/ 10 сентября 2010

Убедитесь, что вы запускаете Visual Studio от имени администратора.Для подключения к работающей службе потребуются права администратора.

0 голосов
/ 29 сентября 2014

Я решил свою проблему, изменив способ генерации установки с RELEASE на DEBUG. А затем я установил службу и подключился как обычно.

0 голосов
/ 01 сентября 2014

Я столкнулся с той же проблемой сегодня, когда не работало ни одно из предыдущих решений.Как выясняется, невозможно подключиться к процессу, если у вас есть сеанс ProcDump , отслеживающий этот процесс.

0 голосов
/ 19 февраля 2013

Использовать меню Инструменты Присоединить к процессу .Просто отметьте Показать процессы от всех пользователей внизу слева.Сортируйте по Обработайте и попробуйте найти службу Windows.

0 голосов
/ 10 сентября 2010

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

...