Как я могу выполнить удаленную отладку на другом компьютере рабочей группы?
-
08-07-2019 - |
Вопрос
Я много раз использовал функцию "Прикрепить к процессу" в VS 2008, но никогда на самом деле на удаленном компьютере.Теперь я должен это сделать, и я уже много читал об этом в сети.Немного поиграв, я дошел до того, что не совсем уверен, как действовать дальше.Прежде всего, вот краткий список того, что я сделал на данный момент:
Тестовая машина (Win XP Pro SP3 x86):
- Установить Msvsmon
- Измените локальную политику для локальных учетных записей на "Классическую - локальные пользователи аутентифицируются как они сами".
- Отключил брандмауэр Windows (да, не самая лучшая идея, но чтобы избежать каких-либо проблем с портом)
- Установила копию приложения, которое должно быть отлажено, включая pdb-файлы
- Создал учетную запись пользователя с тем же именем и паролем, что и на моем компьютере разработчика
- Убедился, что новая созданная учетная запись является учетной записью администратора и имеет разрешение на удаленную отладку
ПРОТИВ хост-компьютера (Vista Home Premium x64 SP2, ПРОТИВ 2008 pro SP1)
- Отключить брандмауэр
- Убедился, что я могу получить доступ к тестовой машине по пути UNC (работает)
Итак, сетевая коммуникация работает.Брандмауэры отключены.Msvsmon запущен на тестовой машине.Но когда я пытаюсь подключиться через "Прикрепить к процессу" и ввожу имя компьютера тестируемой машины, я получаю это (переведено с немецкого):
Не удалось установить соединение с Visual Studio удаленный монитор отладки с именем "TESTMACHINE" .Visual Studio remote отладчик не поддерживает эту версию Windows .
Потребовалось некоторое время, пока я не обнаружил, что "версия Windows не поддерживается" на самом деле пытается сказать "ошибка аутентификации".
Я даже попробовал подключиться, используя "Удаленный без аутентификации" вместо "Стандартного", хотя у меня это не сработает, так как мне нужно отлаживать управляемый код.Поэтому я соответствующим образом настроил Msvsmon, и соединение заработало (я мог выбирать процессы, но, конечно, не мог по-настоящему отлаживать).Так что это заставляет меня поверить, что у меня проблема с аутентификацией.
Итак, наконец, мой вопрос:
Как мне настроить пользователей / аутентификацию на обеих машинах, чтобы я мог удаленно отлаживать управляемый код в рамках одной рабочей группы?
Имена локальных пользователей те же, но как мне разрешить "DEVMACHINE \ me" удаленную отладку на компьютере, где "me" на самом деле "TESTMACHINE \ me"?
Спасибо ;)
Решение
Наконец-то я понял, в чем была проблема.Похоже, что удаленный загрузчик не запускается в Vista Home Premium (!), как можно прочитать здесь:
Удаленная отладка НЕ поддерживается Vista Home Premium.Удаленная отладка требуется операционная система, которая поддерживает полную проверку подлинности Windows.В какой-нибудь будущей версии Visual Studio мы надеемся поддерживать другие формы аутентификации.Однако мы в настоящее время глубоко привязаны к проверке подлинности Windows .На данный момент есть два варианта - купить бизнес-версию Windows или выполнять отладку локально.
Лично я считаю это нелепым - на самом деле у меня есть лицензия Vista Business, но Home Premium был предустановлен на моем компьютере разработчика, и я просто оставил его там.