2015-04-14 2 views
0

У меня есть решение Visual Studio 2012, содержащее проект на C++. Чтобы иметь возможность запускать скомпилированное приложение на клиентских компьютерах, я включил последний распространенный дистрибутив C++ в качестве предварительного условия в программе установки.Версия C++ runtime на машине сборки и машине клиента

Распространяемый на C++, который я включил, является последним из Microsoft - версии 11.0.61030.0.

Когда я ищу файл msvcr110.dll на машине сборки, я вижу файл в нескольких местах, но все файлы имеют версию 11.00.51106.1.

Как я вижу, у меня более старая версия на машине сборки по сравнению с версией, которую я отправляю клиентам. Это проблема? Как обновить среду сборки до последней версии?

+1

Вы должны лучше компилировать с/MT, чтобы исполняемый не будет зависеть от какой-либо внешней библиотеки времени выполнения. –

ответ

0

Если вы строите внешние зависимости, то вы должны убедиться, что у вас установлена ​​такая же версия на вашей машине сборки, что и на компьютерах ваших клиентов. Там могут быть ошибки или недостатки, которые исправляются в последних версиях, но еще хуже, это очень возможно, что вы могли бы увидеть бок о бок вопросы: http://www.codeproject.com/Articles/43681/Side-by-Side-Configuration-Incorrect

Большинство разработчиков, использующих сборки в их применении, возможно, сталкивались с этой вопрос. При запуске приложения мы можем получить сообщение об ошибке «Это приложение не удалось запустить, поскольку его боковая конфигурация неверна».

Во всяком случае, чтобы получить последнюю распространяемый для Visual Studio 2012 вы можете пойти здесь: http://www.microsoft.com/en-us/download/details.aspx?id=30679

+0

Когда я устанавливаю распространяемый пакет на моем компьютере для сборки - сделайте Visual Studio использовать новую версию в сборке? – HenrikL

+0

@HenrikL Только если Visual Studio на вашей машине сборки обновлена. Это то, что делает Side-by-Side. Скажем, что в качестве конечного пользователя я запускаю программу, созданную с помощью Visual Studio 2012 Update 2 и еще одну программу, которая была создана с обновлением версии Visual Studio 2012 3. Side-by-Side позволяет обе эти сборки работать в памяти рядом с каждым Другие. Таким образом, для любой данной программы я запускаю сборки, с которыми она была построена. –