0

Я создаю приложение с помощью Visual Studio 2013 в Windows 10. Я хочу развернуть это приложение на машине под управлением Windows 7, которая работает как установка по умолчанию. Я попытался добавитьInstallshield: Какие перераспределители мне нужны, MSVCR120.dll не найден

Visual C++ 12.0 CRT (x86)

как зависимость в моем проекте «Установка щита». Для (Visual C++ 13.0) нет возможности. Однако, когда я иду, чтобы запустить программу в Windows 7 я получаю сообщение об ошибке, которое гласит:

The program can't start because MSVCR120.dll is missing from your computer. Try reinstalling the program to fix this problem.

код C++ Я использую, использует функции в языке, которые не поддерживаются компилятором MSVC10, поэтому восстановление в Visual Studio 2010 не является вариантом. Какую опцию в экране установки мне нужно выбрать, чтобы программа запускалась в Windows 7?

+0

Нужно добавить полный распространяемый пакет C++ 2013 x86, просто установите его как часть установленного вами – Gilad

+0

. Я пошел дальше и вручную установил распространяемый 2013 год и добавляет символы к имени файла перед расширением файла. Я также попытался переименовать эти файлы. –

+1

Нет «Visual C++ 13.0», а не номер версии, которую кто-либо выбирает, если они могут избежать этого. Просто используйте библиотеки DLL, с которыми вы протестировали свою программу, вы обычно находите их в каталоге c: \ windows \ syswow64. Используйте окно Debug> Windows> Module debugger, если вы не знаете. –

ответ

0

Я думаю, что вам нужно добавить модули интеграции CRT Visual Studio 12.0 (2013) в проект Installshield, в зависимости от используемой вами версии Installshield (если она не включена в вашу версию). Я использую Installshield Spring 2012, и в этой версии модули слияния Visual Studio 12.0 (2013) напрямую не включены. Возможно, вы используете разделенные компьютеры для компиляции программ и настроек, как я.

  • Вы можете найти те модули слияния на вашей компиляции машины (которые гарантируют использование точных же файлов/зависимостей) здесь:

«C: \ Program Files (x86) \ Common Files \ Merge Modules \ Microsoft_VC120_CRT_x64.msm» или "C: \ Program Files (x86) \ Common Files \ Merge Modules \ Microsoft_VC120_CRT_x86.msm"

  • скопировать мои personnals модули слияния в определенной папке на компьютере Installshield ,

Для Exemple: "C: \ Program Files (x86) \ Common Files \ MyMergeModules"

Это позволит избежать установки Visual Studio 12.0 (2013) на Installshield машине.

  • и настроить ınstallshield использовать эту папку из меню: Сервиса -> Параметры -> Merge Tab Modules -> Merge Modules Расположения (Все пользователи)

  • Затем Вы должны добавить слияния модуля ваш проект Installshield, и он должен работать.

Возможно, это не официальный способ, но он работает для меня.

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