Поделиться через


Удаленная отладка проекта C++ в Visual Studio

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

Компоненты удаленного отладчика

Сведения об удаленной отладке приложений UWP (универсальной платформы Windows) вы найдете в статье Отладка установленного пакета приложения.

Требования

Удаленный отладчик поддерживается в среде Windows 7 и более поздних версий, а также в Windows Server, начиная с версии Windows Server 2008 с пакетом обновления 2 (SP2). Полный список требований см. в разделе Требования.

Примечание.

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

Скачивание и установка инструментов удаленной отладки

На удаленном устройстве или сервере, на котором требуется выполнить отладку (не на компьютере Visual Studio), скачайте и установите правильную версию инструментов удаленной отладки по ссылкам, приведенным в следующей таблице.

  • Скачайте последние версии инструментов удаленной отладки для вашей версии Visual Studio. Последняя версия инструментов удаленной отладки совместима с более ранними версиями Visual Studio, но более ранние версии инструментов удаленной отладки несовместимы с более поздними версиями Visual Studio. (Например, если вы используете Visual Studio 2019, скачайте последнее обновление средств удаленного доступа для Visual Studio 2019. В этом сценарии не скачивайте средства удаленного доступа для Visual Studio 2022.)
  • Скачивайте средства удаленной отладки с архитектурой, соответствующей архитектуре компьютера, на котором они будут устанавливаться. Например, если вы хотите отлаживать 32-разрядное приложение на удаленном компьютере под управлением 64-разрядной операционной системы, установите 64-разрядные инструменты удаленной отладки.
  • Если вы выполняете удаленную отладку приложения ARM64EC на устройстве ARM64, установите удаленные средства ARM64, а затем запустите удаленный отладчик x64, который устанавливается с этими средствами. Его можно найти в папке Program Files (x86)\Microsoft Visual Studio<версия>\Common7\IDE\Remote Debugger\x64.
Версия Ссылка Примечания.
Visual Studio 2022 год Инструменты удаленной отладки Совместимы со всеми версиями Visual Studio 2022. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В более ранних версиях Windows Server см . раздел "Разблокировать скачивание файла", чтобы помочь скачать удаленные средства.
Visual Studio 2019 Инструменты удаленной отладки Средства удаленного доступа для Visual Studio 2019 доступны в My.VisualStudio.com. При запросе присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите со своим идентификатором подписки Visual Studio. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В более ранних версиях Windows Server см . раздел "Разблокировать скачивание файла", чтобы помочь скачать удаленные средства.
Visual Studio 2017 Инструменты удаленной отладки Средства удаленного доступа для Visual Studio 2017 доступны в My.VisualStudio.com. При запросе присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите со своим идентификатором подписки Visual Studio. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В Windows Server см. раздел "Разблокировать скачивание файла", чтобы скачать удаленные средства.
Visual Studio 2015 Инструменты удаленной отладки Инструменты удаленной отладки для Visual Studio 2015 доступны по адресу My.VisualStudio.com. При запросе присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите со своим идентификатором подписки Visual Studio. В Windows Server см. раздел "Разблокировать скачивание файла", чтобы скачать удаленные средства.
Visual Studio 2013 Инструменты удаленной отладки Страница загрузки в документации Visual Studio 2013
Visual Studio 2012 Инструменты удаленной отладки Страница загрузки в документации Visual Studio 2012
Версия Ссылка Примечания.
Visual Studio 2019 Инструменты удаленной отладки Совместимы со всеми версиями Visual Studio 2019. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В Windows Server см. раздел "Разблокировать скачивание файла", чтобы скачать удаленные средства. Последнюю версию инструментов удаленной отладки можно узнать в документации по Visual Studio 2022.
Visual Studio 2017 Инструменты удаленной отладки Совместимы со всеми версиями Visual Studio 2017. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В Windows Server см. раздел "Разблокировать скачивание файла", чтобы скачать удаленные средства.
Visual Studio 2015 Инструменты удаленной отладки Инструменты удаленной отладки для Visual Studio 2015 доступны по адресу My.VisualStudio.com. При запросе присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите со своим идентификатором подписки Visual Studio. В Windows Server см. раздел "Разблокировать скачивание файла", чтобы скачать удаленные средства.
Visual Studio 2013 Инструменты удаленной отладки Страница загрузки в документации Visual Studio 2013
Visual Studio 2012 Инструменты удаленной отладки Страница загрузки в документации Visual Studio 2012

Чтобы запустить удаленный отладчик, можно не устанавливать инструменты удаленной отладки, а просто скопировать файл msvsmon.exe на удаленный компьютер. Однако мастер настройки удаленного отладчика (rdbgwiz.exe) доступен только после установки инструментов удаленной отладки. Этот мастер может потребоваться для настройки, если вы захотите запускать удаленный отладчик как службу. Дополнительные сведения см. в разделе (Дополнительно) Настройка удаленного отладчика как службы.

Примечание.

  • Для отладки приложений для Windows 10 и более поздних версий на устройствах ARM используйте ARM64 (доступно с последней версией инструментов удаленной отладки).
  • Для отладки приложений Windows 10 на устройствах Windows RT используйте ARM, доступный только при загрузке инструментов удаленной отладки Visual Studio 2015.

Совет

В некоторых сценариях запуск удаленного отладчика из общей папки может оказаться самым эффективным решением. Дополнительные сведения см. в разделе Запуск удаленного отладчика из общей папки.

Установка удаленного отладчика

  1. На удаленном компьютере найдите Удаленный отладчик в меню Пуск и запустите его.

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

    Если вы планируете присоединиться к процессу, который работает от имени администратора или под другой учетной записью пользователя (например, IIS), щелкните правой кнопкой мыши приложение Удаленный отладчик и выберите пункт Запуск от имени администратора. Дополнительные сведения см. в разделе Запуск удаленного отладчика в качестве администратора.

  2. При первом запуске удаленного отладчика (или перед настройкой) откроется мастер настройки удаленной отладки.

    В большинстве сценариев нажмите кнопку "Далее ", пока не получите страницу "Настройка брандмауэра Windows" мастера.

    Снимок экрана: конфигурация удаленного отладчика.

    Снимок экрана: конфигурация удаленного отладчика.

    Если API-интерфейс веб-служб Windows не установлен (это возможно только в Windows Server 2008 R2), нажмите кнопку Установить.

  3. Выберите хотя бы один тип сетей, для которых вы намерены использовать инструменты удаленной отладки. Если компьютеры соединены через домен, необходимо выбрать первый пункт. Если компьютеры соединены через рабочую или домашнюю группу, выберите второй или третий пункт соответственно.

    Затем нажмите кнопку "Готово ", чтобы запустить удаленный отладчик.

    Затем выберите "Настроить удаленную отладку" , чтобы запустить удаленный отладчик.

  4. По завершении настройки появится окно Удаленный отладчик.

    Снимок экрана: окно удаленного отладчика

    Снимок экрана: окно удаленного отладчика

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

Чтобы прекратить работу удаленного отладчика, щелкните Файл>Выход. Его можно снова запустить из меню Пуск или из командной строки:

<Remote debugger installation directory>\msvsmon.exe

Примечание.

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

Удаленная отладка проекта на C++

В процедуре ниже проект расположен в папке C:\remotetemp, а удаленный компьютер имеет имя MySurface.

  1. Создание консольного приложения C++ с именем CppConsoleApp

  2. Создайте точку останова в легкодоступном месте приложения, например в файле CppConsoleApp.cpp в начале функции main.

  3. В обозревателе решений щелкните правой кнопкой мыши проект и выберите Свойства. Откройте вкладку Отладка.

  4. Для параметра Загружаемый отладчик задайте значение Удаленный отладчик Windows.

    Снимок экрана: вкладка

  5. Внесите в свойства следующие изменения:

    Параметр Значение
    Удаленная команда C:\remotetemp\CppConsoleApp.exe
    Рабочий каталог C:\remotetemp
    Имя удаленного сервера MySurface:portnumber
    Connection Удаленный доступ с аутентификацией Windows
    Тип отладчика Только машинный код
    Каталог развертывания C:\remotetemp
    Дополнительные файлы развертывания $(ProjectDir)\data

    Если вы развертываете дополнительные папки и необходимо, чтобы все файлы в папке развертывались в одной и той же папке, укажите ее имя.

    Дополнительные сведения см. в статье Параметры проекта для конфигурации отладки C++.

  6. В обозревателе решений щелкните решение правой кнопкой мыши и выберите Диспетчер конфигураций.

  7. Для конфигурации Отладка установите флажок Развертывание.

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

  8. Начните отладку (выберите Отладка > Начать отладку или нажмите клавишу F5).

  9. Исполняемый файл автоматически развернется на удаленном компьютере.

  10. Если появится запрос на подключение к удаленному компьютеру, введите сетевые учетные данные.

    Эти учетные данные будут разными в зависимости от конфигурации безопасности вашей сети. Например, на включенном в домен компьютере обычно нужно выбрать сертификат безопасности либо ввести имя и пароль для входа в домен. Если компьютер не подключен к домену, может потребоваться ввести имя компьютера и имя действительной учетной записи пользователя, например MySurface\name@something.com и правильный пароль для нее.

  11. На компьютере с Visual Studio вы должны увидеть, что выполнение остановилось в точке останова.

    Совет

    Кроме того, файлы можно развернуть как отдельный шаг. В обозревателе решений щелкните правой кнопкой мыши узел и выберите командуРазвернуть.

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

    Вместо этого вы можете включить такие файлы в проект и задать для свойства Содержимое значение Да на странице Свойства для каждого файла. Это приведет к тому, что файлы будут скопированы в Каталог развертывания, указанный на странице Удаленный отладчик Windows. Можно также изменить Тип элемента, указав значение Копировать файл, и дополнительные свойства, если файлы нужно копировать во вложенную папку в каталоге развертывания.

Настройка отладки с удаленными символами

Вы можете отлаживать код с использованием символов, созданных на компьютере Visual Studio. Производительность удаленного отладчика гораздо выше при использовании локальных символов.

Если необходимо использовать удаленные символы, необходимо указать удаленные символы в Visual Studio, добавив общий файловый ресурс Windows в путь поиска символов в символах отладки >параметров инструментов > >.