Отсутствует msvcr100.dll - PullRequest
       23

Отсутствует msvcr100.dll

9 голосов
/ 22 сентября 2010

Я сделал программу в Visual Studio 2010 на Windows 7 64-битной.Когда я пытаюсь запустить его на 32-битной Windows XP, я получаю сообщение об отсутствии msvcr100.dll.Когда я пытаюсь скопировать этот файл из Win7 в WInXP, я получаю сообщение, что msvcr100.dll не так.Как установить здание в VS, чтобы msvcr100.dll не понадобился?

Ответы [ 4 ]

15 голосов
/ 22 сентября 2010

Сначала нужно убедиться, что вы создаете 32-битный исполняемый файл - 64-битные не будут работать в 32-битной Windows.

Тогда вы можете либо ...

  • Отправьте 32-разрядные распространяемые файлы вместе с вашим приложением.
  • Удалите зависимость времени выполнения в целом и статически сделайте ссылку на среды выполнения C ++.Для этого установите Project -> Properties -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library на Multi-threaded (/MT).
2 голосов
/ 07 октября 2013

Ответы выше помогли мне, но я все еще получал ошибку:

фатальная ошибка C1189: #error: Пожалуйста, используйте ключ / MD для _AFXDLL-сборок

Чтобы помочь другим, которые, как и я, могли потратить слишком много времени на поиски четкого решения, я хотел бы добавить немного информации, которая решила эту проблему для меня.Как выяснилось, в моем проекте была неправильная настройка «Использование MFC», чтобы использовать ответ, приведенный выше.

Чтобы выразить это ясно:

Откройте свойства проекта (alt-F7 или Project-menu -> [Мой проект] Свойства) и перейдите к Project -> Properties -> Configuration Properties

Если General -> Use of MFC установлено на Use MFC in a Static Library

, вы должны установить

C/C++ -> Code Generation -> Runtime Library

на Multi-threaded Debug (/MTd) или Multi-threaded (/MT)

, а если

General -> Use of MFC установлено на Use MFC in a Shared DLL

, вы должныустановите

C/C++ -> Code Generation -> Runtime Library

на Multi-threaded DLL (/MD) или Multi-threaded Debug DLL

Я получил этот ответ с веб-сайта ответов сообщества Microsoft и всех кредитовдолжен пойти в Дэвид Уилкинсон .

2 голосов
/ 22 сентября 2010

Статическое связывание библиотек времени выполнения должно помочь.Перейдите в Параметры проекта -> C / C ++ -> Генерация кода -> Библиотека времени выполнения и измените значение на Многопоточная или Многопоточная отладка и перекомпилируйте.Таким образом, ваше приложение не должно зависеть от библиотек времени выполнения.Также не забудьте собрать 32-битный исполняемый файл.

0 голосов
/ 24 апреля 2018

введите описание изображения здесь

Шаг 1. : перейдите на этот сайт dll-files.com. введите описание изображения здесь

dll-files.com является отличным хранилищем файлов DLL Windows и содержит почти все файлы DLL, существующие в Windows.

Шаг 2. Теперь введите в поле поиска веб-сайта свою ошибку DLL.

Шаг 3. DLL-Files.com немедленно перечислит zip-файл, содержащий этот конкретный DLL-файл. Загрузите этот zip-файл на свой компьютер и распакуйте его. Извлеченная папка будет содержать файл ошибки DLL.

введите описание изображения здесь

Шаг 4. Скопируйте загружаемый DLL-файл (только этот файл) и вставьте этот файл в системную папку по умолчанию на основе указанных ниже операционных систем. C: WindowsSystem (Windows 95/98 / Me) C: WINNT \ System32 (Windows NT / 2000) C: \ Windows \ System32 (Windows XP, Vista, Windows 7 / Windows 8.1 / Windows 10)

Windows спросит вас, хотите ли вы заменить существующий файл DLL на новый. Скажи да, и пусть Windows скопирует файл. Перезагрузите компьютер и вуаля, теперь вы можете легко запустить игру / приложение, которое не открывалось и выдавало ошибку DLL.

Есть много других веб-сайтов, которые предоставят вам файлы DLL, которые вы хотите

...