Visual studio attach to process вместо start
Присоединение к выполняемым процессам с использованием отладчика Visual Studio
Отладчик Visual Studio можно подключить к запущенному процессу на локальном или удаленном компьютере. После выполнения процесса выберите Отладка > Подключить к процессу или нажмите клавиши CTRL+ALT+P в Visual Studio и используйте диалоговое окно Подключение к процессу, чтобы подключить отладчик к процессу.
Параметр Подключить к процессу можно использовать для отладки запущенных приложений на локальных или удаленных компьютерах, одновременной отладки нескольких процессов, отладки приложений, которые не были созданы в Visual Studio, или отладки любого приложения, которое не было запущено из Visual Studio с прикрепленным отладчиком. Например, если вы используете приложение без отладчика и столкнулись с исключением, можно присоединить отладчик к процессу, в котором выполняется приложение, и начать отладку.
[!TIP] Не уверены, следует ли использовать параметр Подключить к процессу для сценария отладки? См. раздел Общие сценарии отладки.
Присоединение к выполняющемуся процессу на локальном компьютере
Сведения о том, как быстро присоединиться к процессу, подключенному ранее, см. в разделе Повторное подключение к процессу.
Порядок присоединения к процессу на локальном компьютере
В Visual Studio выберите Отладка > Подключить к процессу (или нажмите клавиши CTRL+ALT+P), чтобы открыть диалоговое окно Подключение к процессу.
Проверьте значение параметра Тип подключения.
В большинстве случаев можно использовать значение По умолчанию. Для некоторых сценариев может потребоваться другой тип подключения. Дополнительные сведения см. в других разделах этой статьи, а также в разделе Общие сценарии отладки.
В поле Цель подключения укажите имя локального компьютера.
В списке Доступные процессы найдите и выберите процессы, к которым нужно присоединиться.
Чтобы быстро выбрать процесс, введите его имя или первую букву в поле Фильтр процессов.
Если вы не знаете имя процесса, просмотрите список или обратитесь к разделу Общие сценарии отладки, чтобы ознакомиться с некоторыми распространенными именами процессов.
[!TIP] Процессы могут запускаться и останавливаться в фоновом режиме, пока диалоговое окно Подключение к процессу открыто, поэтому список запущенных процессов может не всегда быть актуальным. Чтобы просмотреть актуальный список, можно в любое время нажать кнопку Обновить.
Убедитесь, что в окне Присоединиться к указан тип кода, который планируется отладить. Для большинства типов приложений можно выбрать значение по умолчанию Автоматически.
При использовании типа подключения По умолчанию можно вручную выбрать тип кода, к которому нужно подключиться. В противном случае кнопка Выбрать может быть неактивна.
Выбор кода вручную
Выберите Подключить.
. moniker range=">= vs-2022"
[!TIP] В сценарии с несколькими идентичными процессами вы можете указать процесс с использованием столбца командной строки или сведений о процессе w3wp из столбца заголовка. . moniker-end
[!NOTE] Во время отладки можно подключиться к нескольким приложениям, но в любой момент времени только один из них активен в отладчике. Можно выбрать текущую программу в панели инструментов Место отладки или окне Процессы в Visual Studio.
Присоединение к процессу на удаленном компьютере
В диалоговом окне Подключение к процессу также можно выбрать удаленный компьютер, просмотреть список доступных процессов, запущенных на этом компьютере, и подключиться к одному или нескольким процессам для отладки. На удаленном компьютере должен выполняться удаленный отладчик (msvsmon.exe). Дополнительные сведения см. в статье Удаленная отладка.
Присоединение к выполняющемуся процессу на удаленном компьютере
В Visual Studio выберите Отладка > Подключить к процессу (или нажмите клавиши CTRL+ALT+P), чтобы открыть диалоговое окно Подключение к процессу.
Проверьте значение параметра Тип подключения.
В большинстве случаев можно использовать значение По умолчанию. В некоторых сценариях, таких как отладка Linux или контейнерного приложения, требуется другой тип подключения. Дополнительные сведения см. в других разделах этой статьи, а также в разделе Общие сценарии отладки.
В поле Целевой объект подключения выберите удаленный компьютер одним из следующих способов.
Щелкните стрелку раскрывающегося списка Целевой объект подключения и выберите из раскрывающегося списка имя компьютера.
Введите имя компьютера в поле Целевой объект подключения и нажмите клавишу ВВОД.
Убедитесь, что Visual Studio добавляет требуемый порт в имя компьютера, которое отображается в формате <remote computer name>:порт.
. moniker range=">= vs-2022"
[!NOTE] Если вы не можете подключиться с помощью имени удаленного компьютера, попробуйте использовать IP-адрес и порт (например, 123.45.678.9:4022 ). 4026 — это порт по умолчанию для удаленного отладчика Visual Studio 2022. Сведения о других назначениях портов удаленного отладчика см. в разделе Назначение портов удаленного отладчика.
. moniker-end . moniker range="vs-2019"
[!NOTE] Если вы не можете подключиться с помощью имени удаленного компьютера, попробуйте использовать IP-адрес и порт (например, 123.45.678.9:4022 ). 4024 — это порт по умолчанию для удаленного отладчика Visual Studio 2019. Сведения о других назначениях портов удаленного отладчика см. в разделе Назначение портов удаленного отладчика.
. moniker-end . moniker range="vs-2017"
[!NOTE] Если вы не можете подключиться с помощью имени удаленного компьютера, попробуйте использовать IP-адрес и порт (например, 123.45.678.9:4022 ). 4022 — это порт по умолчанию для удаленного отладчика Visual Studio 2017. Сведения о других назначениях портов удаленного отладчика см. в разделе Назначение портов удаленного отладчика.
[!NOTE] Значение параметра Тип подключения сохраняется между сеансами отладки. Параметр Целевой объект подключения хранится между сеансами отладки только в случае успешного подключения отладки с этим целевым объектом.
[!TIP] Процессы могут запускаться и останавливаться в фоновом режиме, пока диалоговое окно Подключение к процессу открыто, поэтому список запущенных процессов может не всегда быть актуальным. Чтобы просмотреть актуальный список, можно в любое время нажать кнопку Обновить.
В списке Доступные процессы найдите и выберите процессы, к которым нужно присоединиться.
Чтобы быстро выбрать процесс, введите его имя или первую букву в поле Фильтр процессов.
Если вы не знаете имя процесса, просмотрите список или обратитесь к разделу Общие сценарии отладки, чтобы ознакомиться с некоторыми распространенными именами процессов.
Чтобы найти процесс, который выполняется с другой учетной записью пользователя, установите флажок Показать процессы всех пользователей.
Убедитесь, что в окне Присоединиться к указан тип кода, который планируется отладить. Для большинства типов приложений можно выбрать значение по умолчанию Автоматически.
При использовании типа подключения По умолчанию можно вручную выбрать тип кода, к которому нужно подключиться. В противном случае кнопка Выбрать может быть неактивна.
Выбор кода вручную
Выберите Подключить.
[!NOTE] Во время отладки можно подключиться к нескольким приложениям, но в любой момент времени только один из них активен в отладчике. Можно выбрать текущую программу в панели инструментов Место отладки или окне Процессы в Visual Studio.
В некоторых случаях при отладке в сеансе удаленного рабочего стола (службы терминалов) в списке Доступные процессы не отображаются все доступные процессы. При работе с Visual Studio в качестве пользователя с ограниченным доступом в списке Доступные процессы не будут отображаться процессы, запущенные в сеансе 0, который используется для служб и других серверных процессов, включая w3wp.exe. Можно устранить эту проблему, запустив [!INCLUDEvsprvs] под учетной записью администратора или запустив [!INCLUDEvsprvs] с консоли сервера вместо сеанса служб терминалов.
Если ни один из этих обходных путей использовать невозможно, третий вариант — присоединение к процессу путем запуска vsjitdebugger.exe -p <ProcessId> из командной строки Windows. Можно определить идентификатор процесса с помощью tlist.exe. Чтобы получить файл tlist.exe, скачайте и установите средства отладки для Windows, которые доступны на странице скачиваемых файлов WDK и WinDbg.
Если вы выполняете публикацию в Службе приложений Azure (Windows), параметр Подключить отладчик можно найти в меню . в разделе Размещение. Visual Studio пытается подключить удаленный отладчик к экземпляру Службы приложений Azure (Windows), в котором публикуется профиль.
. image type="content" source="../debugger/media/attach-debugger-publish-profile.jpg" alt-text="Снимок экрана: параметр "Подключить отладчик" на странице сводки публикации".
. moniker range=">= vs-2019"
Присоединение к процессу, выполняющемуся в контейнере Docker
Повторное подключение к процессу
Чтобы быстро присоединиться к процессам, к которым вы ранее были присоединены, выберите Отладка > Повторно подключиться к процессу (SHIFT+ALT+P). При выборе этой команды отладчик сразу же попытается присоединиться к последним процессам, к которым вы подключались, сначала попытавшись выполнить сопоставление с ИД предыдущего процесса, а если это не удается, то путем сопоставления с именем предыдущего процесса. Если совпадений не найдено или несколько процессов имеют одно и то же имя, откроется диалоговое окно Подключение к процессу, в котором можно выбрать правильный процесс.
[!NOTE] Команда Повторно подключиться к процессу доступна начиная с Visual Studio 2017.
Общие сценарии отладки
Чтобы определить, следует ли использовать команду Подключиться к процессу и к какому процессу подключиться, используйте таблицу ниже, в которой приведены несколько распространенных сценариев отладки со ссылками на дополнительные инструкции, где это возможно. (Этот список не является исчерпывающим.)
Для некоторых типов приложений, например универсальных приложений для Windows (UWP), не следует напрямую подключаться к имени процесса. Вместо этого необходимо использовать команду Отладка установленного пакета приложения в Visual Studio (см. таблицу).
Чтобы отладчик мог присоединиться к коду на языке C++, код должен предоставлять DebuggableAttribute . Это можно добавить в код автоматически, путем связывания с параметром /ASSEMBLYDEBUG компоновщика.
Для отладки скриптов на стороне клиента в браузере должна быть включена отладка скриптов. Для отладки клиентского скрипта в Chrome выберите JavaScript (Chrome) или JavaScript (Microsoft Edge - Chromium) в качестве типа кода, и, в зависимости от типа приложения, может потребоваться закрыть все экземпляры Chrome и запустить браузер в режиме отладки (введите chrome.exe --remote-debugging-port=9222 в командной строке). В более ранних версиях Visual Studio в качестве отладчика скриптов для Chrome использовался Веб-пакет.
Чтобы быстро выбрать выполняющийся процесс для подключения, в Visual Studio нажмите клавиши CTRL+ALT+P, а затем введите первую букву имени процесса.
Использование функций отладчика
Чтобы использовать все функции отладчика Visual Studio (например, при обнаружении точек останова) при присоединении к процессу, приложение должно точно соответствовать локальным источнику и символам. То есть отладчик должен иметь возможность загрузки правильных файлов символов (PDB). По умолчанию для этого требуется отладочная сборка.
В сценариях удаленной отладки должен быть уже открыт исходный код (или копия исходного кода) в Visual Studio. Скомпилированные двоичные файлы приложения на удаленном компьютере должны поступать из той же сборки, что и на локальном компьютере.
В некоторых локальных сценариях отладки в Visual Studio можно выполнять отладку без доступа к источнику, если в приложении есть правильные файлы символов. По умолчанию для этого требуется отладочная сборка. Дополнительные сведения см. в разделе Указание файлов символов и исходных файлов.
Устранение ошибок присоединения
В некоторых сценариях отладчику может потребоваться помощь, чтобы правильно определить тип отлаживаемого кода. Если значения для подключения заданы правильно (проверить процесс можно в списке Доступные процессы), но отладчику не удается подключиться, попробуйте выбрать наиболее подходящий тип подключения в списке Тип подключения. Это может потребоваться, например, при отладке приложения Linux или Python. Если используется тип подключения "По умолчанию", можно также выбрать определенный тип кода для подключения, как описано далее в этом разделе.
При присоединении отладчика к выполняющемуся процессу этот процесс может содержать один или несколько типов кода. Типы кода, к которым может присоединиться отладчик, отображаются и выбираются в диалоговом окне Выбор типа кода .
Иногда отладчик может успешно присоединяться к одному типу кода, но не к другому. Это происходит в следующих случаях:
- При попытке присоединения к процессу, выполняющемуся на удаленном компьютере. На удаленном компьютере для одних типов кода могут иметься компоненты удаленной отладки, а для других — нет.
- При попытке присоединиться к двум или более процессам для прямой отладки базы данных. Отладка SQL поддерживает присоединение только к одному процессу.
Если отладчик успешно подключается хотя бы к одному типу кода, то можно приступать к отладке процесса. Но отлаживать можно будет только те типы кода, к которым удалось подсоединиться. Неподключенный код в этом процессе будет по-прежнему выполняться, но задавать в этом коде точки останова, просматривать данные и выполнять другие операции отладки не удастся.
Если нужны более конкретные сведения о том, почему отладчику не удалось присоединиться к некоторому типу кода, попробуйте повторно присоединиться только к этому типу кода.
Чтобы получить подробные сведения о том, почему не удалось присоединиться к типу кода:
Отключитесь от процесса. В меню Отладка выберите Отсоединить все.
Вновь подключитесь к процессу, выбрав только тип кода.
В диалоговом окне Присоединение к процессу выберите процесс в списке Доступные процессы.
Щелкните Выбрать.
В диалоговом окне Выбор типа кода выберите Выполнять отладку кода следующих типов и выберите тип кода, к которому не удалось присоединиться. Отмените выбор других типов кода.
В диалоговом окне Подключение к процессу нажмите Подключиться.
Я создаю внутренний инструмент разработки для управления различными процессами, обычно используемыми в нашей среде разработки. Инструмент показывает список отслеживаемых процессов с указанием их состояния выполнения и позволяет запускать или останавливать каждый процесс.
Я хотел бы добавить функцию присоединения отладчика к отслеживаемому процессу из моего инструмента вместо того, чтобы переходить в Debug -> Attach to process в Visual Studio и находить процесс .
Моя цель - создать что-то вроде Debugger.Launch() , которое отображало бы список доступных Visual Studio. Я не могу использовать Debugger.Launch() , потому что он запускает отладчик для процесса, выполняющего вызов. Мне нужно что-то вроде Debugger.Launch(processId) .
Как мне достичь этой функциональности?
Решением может быть реализация команды в каждом отслеживаемом процессе для вызова Debugger.Launch() при получении команды от инструмента мониторинга, но я бы предпочел что-то, что не требует изменения кода отслеживаемых процессов.
При использовании Debugger.Launch() экземпляры Visual Studio, к которым уже подключен отладчик, не отображаются. Visual Studio не ограничивается одним подключенным отладчиком, вы можете подключаться к нескольким процессам при использовании Debug → Attach to process .
Как обойти это ограничение при использовании Debugger.Launch() или альтернативы?
3 ответа
Коллега нашел решение с использованием DTE, и я разместил код на PasteBin.
Интересующие нас методы: AttachVisualStudioToProcess и TryGetVsInstance
Вы сделали для этого специальный плагин VS? Или как ты "подключил"? У меня такая же потребность. Я смотрю на ваш код здесь, но ищу, как вы подключили его к своему конечному решению. Спасибо. Мы не создавали плагин VS, мы использовали этот код в специальном инструменте, который отслеживает процессы, связанные с нашими продуктами. Я использую этот код, но не могу понять, как указать VS присоединиться к управляемому коду. В диалоговом окне «Присоединить к процессу» будет предложено «Присоединить к:», где вы можете выбрать «Управляемый код», а не «автоматическое определение». Это необходимо установить при отладке процессов IISExpress. Есть идеи, как выбрать это в коде? На заметку: TryGetVsInstance не вернет объект DTE экземпляра Visual Studio, который не был запущен от имени администратора, если вызывающий сценарий вызывается из процесса с повышенными правами.WinDbg по умолчанию выполняет последовательную отладку машинного кода. Если вы хотите запустить другой экземпляр Visual Studio, установите флажок Запустить отладчик автоматически в MSDN:
Если я хочу отлаживать события, происходящие после инициализации программы, проблем нет. Я запускаю программу из проводника, присоединяю процесс к Visual Studio и добавляю в код несколько точек останова. Но здесь мне нужно поставить точки останова на события запуска. Мне нужно иметь возможность присоединять процессы к Visual Studio, не в зависимости от PID, а от имени конкретного процесса или любого другого решения, которое будет работать.
Конечно, о добавлении Thread.Sleep(1000) в мои события запуска, чтобы дать мне время присоединить процесс в Visual Studio, не может быть и речи!
На самом деле вы можете; вы не привязываетесь к этому, вы начинаете это. В свойствах проекта на вкладке «Отладка» укажите путь к программе, к которой вы хотите присоединиться, в текстовом поле «Команда».
Вы также можете ввести любые аргументы командной строки для программы в поле «Командные аргументы»:
Убедитесь, что для параметра «Прикрепить» установлено значение «Нет».
Хорошее решение, но учтите, что нажатие F5 в этом случае не работает. Вместо этого щелкните правой кнопкой мыши соответствующий проект и выберите «Отладка> Начать новый экземпляр» в контекстном меню. Для работы F5 ваш проект должен быть начальным проектом в решении. Для этого в проводнике решений щелкните правой кнопкой мыши проект и выберите «Установить как запускаемый проект». Также, если ваша программа имеет какие-то внешние зависимости, вам также необходимо изменить «Рабочий каталог». Может потребоваться установить флажок «Включить отладку собственного кода» (Свойства проекта → Отладка → Включить отладчики ). И как это сделать для всего решения с 40 проектами?Я отлаживал плагин C ++ во внешнем порожденном процессе, который разбился из-за выдачи исключения при запуске, и это отлично сработало для меня:
Добавьте бесплатное расширение Reattach Extension для Visual Studio . Попросите его повторно присоединиться к имени процесса перед его запуском. Появится модальное диалоговое окно, в котором говорится, что он ожидает запуска процесса по имени.
Теперь запустите процесс, и отладчик Visual Studio немедленно подключится, улавливая исключения и достигая точек останова.
Я зашел в тупик. Он запросил авторизацию администратора, когда моя цель была запущена, и после ввода pwd и перезапуска vs Reattach исчез. Только vs без авторизации администратора содержит Reattach. У меня не работает. Он все еще присоединяется слишком поздно, после того, как авария уже произошла. Кажется, он проверяет существующие процессы раз в секунду, что для этого приложения совершенно бессмысленно.Если у вас Visual Studio 2017-2019, выполните следующие действия:
- Файл> Открыть> Проект / Решение
- Выберите ваш .exe
- Отладка> Начать отладку
Намного проще, чем другие предложения: вам не нужно возиться со свойствами проекта и никаких расширений не требуется.
Но вам нужно будет сообщить Visual Studio, где находятся символы отладки, если она не найдет их автоматически, быстро легко сделать за 5 секунд, мне это нравится. Спасибо Мой exe был запущен, но не удалось установить точку останова. Что я должен делать? @Eric Если мой комментарий выше не касается этого, я рекомендую задать это как вопрос SO, а не комментарий. Ваша проблема станет более заметной, и у вас будет возможность объяснить свой конкретный сценарий. Тогда дайте нам знать, что вы нашли!Я нашел этот ответ, когда искал нечто подобное. В моем случае я не мог просто использовать исполняемый файл в качестве программы запуска моего проекта, потому что его нужно было запускать в очень специфической среде, которую я не мог легко воспроизвести (а именно: запущен из cygwin).
Я взглянул на расширение Reattach Extension, предложенное mrstrange, а также на очень похожее расширение Attach To Anything . но мой исполняемый файл, похоже, закрывался слишком быстро, чтобы расширения могли уведомить и прикрепить.
- Запустите редактор реестра (regedit).
- В редакторе реестра откройте папку HKEY_LOCAL_MACHINE.
- Перейдите в HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows NT \ currentversion \ параметры выполнения файла изображения.
- В папке « Параметры выполнения файла изображения » найдите имя приложения, которое нужно отлаживать, например myapp.exe . Если вы не можете найти приложение, которое хотите отладить:
a. Щелкните правой кнопкой мыши папку « Параметры выполнения файла изображения » и в контекстном меню выберите « Новый ключ» .
б. Щелкните новый ключ правой кнопкой мыши и в контекстном меню выберите команду « Переименовать» . c. Измените имя ключа на имя вашего приложения; myapp.exe , в этом примере. - Щелкните правой кнопкой мыши папку myapp.exe и в контекстном меню выберите Новое строковое значение .
- Щелкните правой кнопкой мыши новое строковое значение и в контекстном меню выберите «Переименовать».
- Измените имя на debugger .
- Щелкните правой кнопкой мыши новое строковое значение и в контекстном меню выберите « Изменить» . Откроется диалоговое окно « Редактировать строку ».
- В поле « Значение» введите vsjitdebugger.exe .
- Щелкните ОК .
- В меню « Реестр» нажмите « Выход» .
- Каталог, содержащий vsjitdebugger.exe, должен находиться в вашем системном пути. Чтобы добавить его в системный путь, выполните следующие действия:
a. Откройте панель управления в классическом виде и дважды щелкните « Система» .
б. Щелкните Advanced System Settings .
c. В свойствах системы перейдите на вкладку « Дополнительно ».
d. На вкладке « Дополнительно » щелкните « Переменные среды» .
е. В диалоговом окне « Переменные среды » в разделе « Системные переменные» выберите « Путь» и нажмите кнопку « Изменить» .
f. В редактируемой системной переменнойдиалоговом окне, добавьте каталог в поле значения переменной . Используйте точку с запятой, чтобы отделить его от других записей в списке.
грамм. Щелкните OK, чтобы закрыть диалоговое окно Edit System Variable .
час Нажмите ОК, чтобы закрыть диалоговое окно « Переменные среды ».
я. Нажмите ОК, чтобы закрыть диалоговое окно Свойства системы . - Теперь используйте любой метод для запуска вашего приложения. Visual Studio запустится и загрузит приложение.
Надеюсь, что это поможет кому-нибудь еще в будущем!
Если процесса нет, Visual Studio не сможет к нему подключиться .
Тем не менее, вы можете установить программу запуска вашего проекта, отличную от вывода вашего проекта.
Мой MainUI связался с WCF и WCF далее связывается с BLL и DAL, всякий раз, когда мне нужно отлаживать BLL и DAL, мне сначала нужно прикрепить WCF как процесс в Visual studio(каждый раз). Как бы я мог уберечь себя от этой мороки.
Как я мог настроить visual studio таким образом, чтобы я автоматически подключался к службе автоматически и мог легко отлаживать свое приложение?
Всякий раз, когда я пытаюсь отладить веб-проект Visual Studio 2010, VS зависает и в конечном итоге выходит из строя. Это происходит, если я пытаюсь запустить проект с помощью F5 или через Attach to Process еще до того, как появится список процессов. Нажатие F5, например, в проекте формы Windows.
Я написал обработчик событий для сайта sharepoint 2010, используя visual studio 2010 . Я прикрепил точку останова к коду и следовал процессу, который я сделал в visual studio 2008. Он состоит в том, чтобы использовать опцию прикрепить к процессу и выбрать опцию w3wp. Событие привязывается, но.
Настройте свое решение для запуска нескольких проектов. Я делаю это для аналогичного приложения. VS автоматически запускает WCF и клиент, и я могу установить точки останова в любом из них.
Порядок запуска - это порядок, в котором вы выбираете проекты.
Щелкните правой кнопкой мыши на вашем решении и выберите "Выбрать запускаемые проекты". Затем выберите несколько запускаемых проектов и выберите проекты.
Пример того, как запустить процесс и прикрепить его к Visual Studio 2010 с EnvDTE(версия актуальна).
В настоящее время я работаю над веб-приложением в Visual Studio 2010. Я предпочитаю отлаживать Javascript в этом приложении с помощью инструментов разработки в IE, поэтому каждый раз, когда я отлаживаю приложение, мне приходится вручную отсоединять процесс iexplore.exe в окне Processes , чтобы я.
Я пытаюсь понять, для чего полезно прикрепление к процессу в Visual Studio. Я ищу утечку памяти и нахожу, что WinDBG довольно трудно использовать, если не сказать больше. Я понимаю, что есть и другие коммерческие альтернативы, такие как ANT Profiler. Для чего конкретно используется прикрепление к.
Попробуйте использовать System.Diagnostics.Debugger.Break() в коде. Если отладчик не подключен, то при выполнении этого кода будет предложено подключить отладчик, и вы сможете выбрать существующий экземпляр.
Если это для самостоятельной службы WCF windows, вам необходимо настроить хост службы WCF для запуска в консоли или в качестве службы windows. Когда вы включили консоль запуска, вы можете начать отладку с visual studio.
Создайте параметр приложения с именем "RunInConsole." В методе запуска узла службы, используйте следующий код:
Во всех средах, в которых вы развертываетесь, для этого параметра конфигурации всегда будет установлено значение false, иначе служба не запустится, но при локальной отладке вы установите для него значение true.
- На странице свойств для проекта wcf service выберите вкладку Web.
- Выберите "Запустить внешнюю программу" для действия "Начать" и выберите MainUI.exe.
- Установите рабочий каталог в качестве папки, в которой находится MainUI.exe (возможно, папка bin).
- Установите точку останова и нажмите клавишу f5, чтобы начать отладку.
Если я правильно понимаю, макрос может быть ответом:
- Инструменты->Macros->запись TemporarilyMacro (Ctrl+shift+r)
- Прикрепите VS к процессу как обычно (ctrl+alt+p)
- Остановить запись макроса (ctrl+shift+r)
- Перейдите в меню Вид->Другие Windows->Макрос Explorer (CTRL+F8)
- найдите свой временный макрос (где-то в MyMacros - >RecordingModule) и переименуйте его
- Теперь перейдите в меню Инструменты->Параметры->Клавиатура и найдите свой макрос (в разделе "Показать команду, содержащую имя вашего макроса)
- в "Press Shortcut keys" свяжите его с какой-нибудь комбинацией клавиш (у меня есть макрос в CTRL+SHIFT+K ;))
- Нажмите OK
- будь счастлив
Вот статья, в которой объясняется, как сделать this. You можно настроить этот макрос.
Лично я предпочитаю использовать Debugger.Launch() , как предложено здесь в этой теме, потому что он не нуждается в ссылках на DTE (это специфично для IDE и должно быть явно указано в проекте, который будет использоваться)
Похожие вопросы:
Я пытаюсь написать пакет Visual Studio, который присоединит отладчик к именованному процессу. Я использую следующий код в своем пакете. var info = new VsDebugTargetInfo < dlo =.
Я использую Visual Studio 2008; можно ли настроить параметры отладки проекта для автоматического присоединения к процессу с определенным именем при нажатии клавиши F5? Edit: фактический макрос.
Я использую VS 2010 для присоединения к скрипту Python, который вызывает DLL через ctypes. Я могу прикрепиться к процессу, и под видом Modules я вижу DLL, и он связан с PDB. Пути ведут прямо к папке.
Всякий раз, когда я пытаюсь отладить веб-проект Visual Studio 2010, VS зависает и в конечном итоге выходит из строя. Это происходит, если я пытаюсь запустить проект с помощью F5 или через Attach to.
Я написал обработчик событий для сайта sharepoint 2010, используя visual studio 2010 . Я прикрепил точку останова к коду и следовал процессу, который я сделал в visual studio 2008. Он состоит в том.
В настоящее время я работаю над веб-приложением в Visual Studio 2010. Я предпочитаю отлаживать Javascript в этом приложении с помощью инструментов разработки в IE, поэтому каждый раз, когда я.
Я пытаюсь понять, для чего полезно прикрепление к процессу в Visual Studio. Я ищу утечку памяти и нахожу, что WinDBG довольно трудно использовать, если не сказать больше. Я понимаю, что есть и.
У меня есть веб-страница, работающая на localhost, которую я хочу использовать для прерывания кода в Visual Studio 2010. Веб-страница работает в Internet Explorer. OS - это Windows 2008. Когда я иду.
Все, у меня есть сборка, установленная на моей машине, и некоторые функции отлично работают в коде( в обоих режимах release и debug), но эта функциональность работает не только в сборке. Так вот, я.
Я пытаюсь протестировать приложение, которое использует Visual Studio 2015 Shell (изолированный). Для тестирования пакета расширения с Visual Studio я нашел образцы для более старых версий . Они.
Читайте также: