Установка MS Debug DLL для удаленной отладки

У меня есть приложение.NET, которое я хотел бы установить на ВМ для удаленной отладки.

Приложение использует встроенную библиотеку VC++ DLL, которая связывается с MFC и библиотеками времени выполнения MSVC через DLL.

Когда я запускаю, зависит от виртуальной машины, он говорит, что DLL нужны следующие библиотеки DLL:

mfc90d.dll    
msvcm90d.dll    
msvcp90d.dll    
msvcr90d.dll    
msjava.dll

Также сообщается о следующей ошибке:

Ошибка: информация о конфигурации Side-by-Side для [путь dll] содержит ошибки. Это приложение не удалось запустить из-за неправильной конфигурации приложения. Переустановка приложения может решить эту проблему (14001).

Я бы предпочел не устанавливать полную версию Visual Studio 2008 на виртуальную машину, просто чтобы отладить это.

Каков наилучший метод для установки необходимых DLL на ВМ?

3 ответа

Решение

DLL отладки предоставляются в подкаталоге vc\Debug_NonRedist. Правильное их развертывание объясняется в этой статье библиотеки MSDN.

После обновления пакета обновления 1 (SP1) в версии 2008 произошла ошибка, из-за которой версии манифеста не обновлялись. Чтобы обойти это, я должен был сделать это на удаленной машине:

изменить Microsoft.VC90.DebugCRT.manifest изменить версию ="9.0.30729.4148" на версию ="9.0.21022.8"

редактировать Microsoft.VC90.DebugMFC.manifest

изменить версию ="9.0.30729.4148" на версию ="9.0.21022.8"

[обновление] В поисках ссылки для этого я нашел

Важное замечание: Если вы делаете это с помощью Visual Studio 2008 с пакетом обновления 1 (SP1), убедитесь, что в предварительно скомпилированном заголовке указано следующее:

#define _BIND_TO_CURRENT_VCLIBS_VERSION 1

http://qualapps.blogspot.com/2008/07/visual-studio-2008-c-redistributable.html

Можно установить отладочные распространяемые файлы для VC++. Microsoft даже дает их вам. Вам просто нужно держаться подальше от тех, которые находятся в каталоге system32, поскольку они не работают, просто копируя их на другой компьютер.

Проверьте этот блог: http://wdy501.blogspot.com/2010/07/dealing-with-visual-studio.html

И я использовал блог, чтобы найти отладочные.dll для VS 2012, и мне удалось скопировать их на другой компьютер и запустить отладочную версию. Просто имейте в виду, что MS помещает файлы "debug_nonRedist" в структуру каталогов с меткой "Microsoft Visual Studio 11.0". Вот полный путь, по которому я нашел нужные отладочные библиотеки CRT:

C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ VC \ redist \ Debug_NonRedist \ x86 \ Microsoft.VC110.DebugCRT

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

Другие вопросы по тегам