Необходимые параметры для подключения к Visual Studio Remote Debugger (msvsmon) по сети - PullRequest
1 голос
/ 13 августа 2010

Мы пытаемся заставить удаленную отладку работать между доменами от компьютера с Windows 7 до домашнего компьютера с Windows XP.Машины работают по VPN вместе, используя LogMeIn Hamachi.

Я проверил руководство MSDN по настройке удаленной отладки и прошел много ошибок, но постоянно сталкиваюсь с блоками.Я могу получить его в нативной отладке, но не могу получить управляемую отладку для аутентификации.Вот то, что я уже сделал -

  • Visual Studio и монитор отладки работают на своих компьютерах под идентичным администратором - отладка / отладка.

  • отладчик изначально отказывается работать на компьютере xp, поэтому я запускаю его таким образом: runas / user: debug "c: \ josh \ msvsmon.exe -nosecuritywarn -noauth -anyuser", а затемпереключив его в управляемый режим оттуда.

  • hamachi дает виртуальным IP-адресам компьютеров, но не имена хостов.Я разрешил IP-адрес удаленного компьютера по имени его хоста в моем локальном файле hosts - это привело меня к тому, что vstudio не смог найти debug @ HOSTNAME и оказался в настоящем месте в раю.

  • редактировать: правильно, моя текущая ошибка.Я пытаюсь войти в систему и получить ошибку «Bad Logon and Password» в аутентифицированном режиме.Я попытался вручную установить сообщение «Гости разрешают локальные учетные записи», и это не помогло.

Не стесняйтесь игнорировать все эти конкретные биты и просто решите мою общую проблему - я тольковключены их для тщательности и предыстории и т. д.

Ответы [ 2 ]

2 голосов
/ 15 ноября 2013

Sniffing показывает, что VS 2010 подключается к удаленному отладчику через SMB.Он открывает IPC$ share, затем пытается открыть именованный канал \Microsoft.VisualStudio.10.0.Remote\<name>, затем \Microsoft.VisualStudio.10.0.Remote\svc=msvsmon100 (см. Могут ли имена именованных каналов иметь обратную косую черту? о дополнительных обратных косых чертах).

The <name> настраивается с /name arg на стороне msvsmon и с добавлением <name>@ на стороне VS.По умолчанию это имя пользователя msvsmon / VS работает как.Я не знаю, когда 2-я труба создана;в режиме аутентификации это не так.

Итак, вам нужны права и настройки для:

  1. подключения к удаленному серверу через SMB (через NetBIOS или напрямую) и успешной аутентификации;
  2. подключиться к правильному каналу и использовать его.

  • Для первого элемента проще всего создать учетную запись на удаленном компьютере сто же имя и пароль, под которым работает VS.Это то, что рекомендует Удаленная отладка между доменами .
  • Для 2-го элемента необходимо указать правильное значение <name> на стороне VS и / или на стороне сервера и иметь требуемый доступ в соответствии с ACL канала для пользователя, которого вы аутентифицировали как.Видимо, окно «Разрешения» в msvsmon отражает ACL («Отладка» должна соответствовать требуемому набору флагов ACL).В моем тесте msvsmon отказался добавлять пользователей в список разрешенных с неясной ошибкой.Поэтому проще всего создать локального пользователя и добавить его к локальным администраторам.
1 голос
/ 02 ноября 2010

Джошуа, что означает деталь "через домены"? Являются ли ящики Win7 и WinXP членами разных доменов? Доверяют ли домены обоим направлениям? Являются ли «отладочные» учетные записи пользователей локальными или доменными? И действительно ли XP box действительно является версией XP Home? Если да, то как это вообще присоединение к домену?

Есть ли еще какие-либо подробности об ошибке, которая встречается в данный момент - есть ли дополнительный текст в диалоге ошибок? Есть ли какая-либо дополнительная информация в журналах событий на целевом поле (например, вы видите какие-либо сбои в журнале событий безопасности - регистрируются ли неудачные попытки входа в систему / попытки входа в учетную запись? в журнале приложений или системы)?

Какое приложение вы удаленно отлаживаете на компьютере с XP? Это ASP.NET или что-то еще?

Если Windows / Visual Studio предоставляют точную картину проблемы с ошибкой «неверный вход в систему и пароль», то предполагается, что к тому времени, когда управляемый код попытается проверить, имеет ли удаленный процесс достаточные разрешения для доступа к объекту / процесс отлаживается, токен для процесса удаленной отладки больше не является пользователем «отладки», и / или токен больше не включает привилегию «Отладка программ».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...