2

Я ищу советы для тех, кто в разработке для Windows XP встроенные в визуальной Studio2013, затем отлаживать в Visual Studio 2010.Лучшие методы удаленной отладки с помощью VS2010 под VS2013

Причины этого обсуждаются в этом Stack Overflow Link по теме.

По существу протокол удаленной отладки изменен после VS2010, а новый msvsmon.exe, который использует новый протокол VS2013, не поддерживает встроенную отладку XP. Таким образом, мы вынуждены использовать решение TWO IDE, одно для сборки, другое для отладки. VS2013 используется для сборки, а VS2010 используется для запуска удаленных сеансов отладки.

Существует некоторая дезинформация о требовании приобрести как VS2013, так и VS2010. Как видно из ранее упомянутой ссылки, можно бесплатно получить отладочную среду VS2010. Я смог проверить бесплатную загрузку компонентов, но не успел проверить, работает ли среда отладки. Окружающая среда, которую я использую, состоит из лицензированной копии VS2013 и лицензированной копии VS2010.

Вот две первоначальные проблемы, которые я не видел делать удаленную отладку в прежней среде VS6 файл msvsmon.exe:

1) VS2013 строительных проектов, VS2010 не хочет, чтобы открыть * .sln файл. Если я открою VS6 .dsp/.dsw, который мы портировали из VS2010, он делает «ОДИН РАЗ КОНВЕРСИИ», который разрушает мой задуманный проект сборки VS2013. Кажется, мне нужно будет создать два разных пространства решений, одно из которых называется SOLUTION_NAME_VS2013, а другое SOLUTION_NAME_VS2010. Мне интересно узнать, есть ли более элегантное решение для управления одним набором файлов BUILD с двумя разными «Highlander» (может быть только одним) IDE.

2) При запуске проекта удаленно, если он падает, я получаю один из тех раздражающих диалогов «Ваша программа с разбивкой» на отладочном хосте Win2012 (работает VS2010), который захватывает сигнал сбоя от отладчика. Примерно в 30% случаев он обнаруживает исполняемый экземпляр VS2010, в 70% случаев, когда он этого не делает. CrashDialog

3) раз msvmon из (потребностей перезагрузки) и требует дополнительных кликов времени/мыши для установки на старом VS6 msvcmon.exe

Я интересно, если другая Windows Embedded разработчики обнаружили элегантные решения для них вопросы. Я напишу то, что найду здесь, если найду еще какие-нибудь подсказки.


+0

Измените ToolsVersion в .vxproj xml, чтобы проект, созданный в VS2013, мог быть прочитан и выполнен в VS2010. Ищите: Изменить на:

+0

Предложение: Если вторая часть вашего вопроса на самом деле является дубликатом http://stackoverflow.com/questions/396369/ how-do-i-disable-the-debug-close-application-dialog-on-windows-vista, почему бы не полностью удалить эту часть? Тогда вопрос может быть сфокусирован на первой части: «Как отлаживать как VS2013, так и VS2010 с одним решением?». Затем кто-то может создать ответ сообщества wiki, чтобы получить решение из вашего вопроса. Это сильно уберет ваш пост. – BSMP

+0

Это не идеальный вариант, чтобы оставить сообщение, подобное этому, поэтому я буду продвигать его в надежде, что вы сможете создать ответ. (У меня недостаточно знаний, чтобы знать, должны ли те два вопроса, которые вы задали, настолько сильно связаны, что они должны идти по одному и тому же вопросу, но в целом это хорошая идея задать несколько вопросов в нескольких сообщениях, чтобы избежать закрыты как слишком локализованные/широкие). – halfer

ответ

1

Для Issue # 1: Невозможно прочитать VS2013 * .sln файл в VS2010.

Проблема заключалась в том, что версия Visual Studio 2010 должна быть по меньшей мере SERVICE PACK1. Более ранние версии Visual Studio 2010 не могут читать файлы решений VS2012/VS2013/VS2015.

Screenshot of Working vs non Working VS2010

Для Выпуска № 2: Ваша программа разбилась сигналы диалоговых предупреждений от достижения отладчика.

Это Stack Overflow link было полезно. Существует несколько способов подавить диалог «Ваша программа разбилась». В моем случае пользователям может потребоваться отладка новых приложений в производственной системе, поэтому изменение настроек во всем мире не является идеальным.

Я выбираю решение от this Raymond Chen link, что позволяет мне отключить диалоговое окно приложения по заявке. Поскольку я обычно имею доступ к исходному коду, я отлаживаю, это было лучшим решением для меня.

DWORD dwMode = SetErrorMode(SEM_NOGPFAULTERRORBOX); 
SetErrorMode(dwMode | SEM_NOGPFAULTERRORBOX); 

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

Наконец, новый удаленный клиент отладки изменился на msvmon.exe, который улучшил безопасность. Для сохранения дополнительных щелчков мыши, следующая команда полезна для работы на удаленном Windows Embedded XP клиента:

"Path\to\msvsmon.exe" /anyuser /noauth /nosecuritywarn /timeout:2147483646 

/noauth и /anyuser требует /nosecuritywarn. /timeout Максимальное значение позволяет клиенту отладчика прекратить работу через ~ час простоя. Если ваш рабочий день будет потрачен на отладку, вы не хотите, чтобы он тайминг после кофе/перестроил весь перерыв.

 Смежные вопросы

  • Нет связанных вопросов^_^