Вопрос

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

Это было полезно?

Решение

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

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

  • Корабль 32-битные перераспределенные с вашим приложением.
  • Снимите зависимость выполнения в целом и ссылку статически ссылаться на runtimes C ++. Сделать это, установить Project -> Properties -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library к Multi-threaded (/MT).

Другие советы

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

Также не забудьте построить 32-битный исполняемый файл.

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

Фатальная ошибка 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 Community ответы на сайт и весь кредит должен идти Дэвид Уилкинсон.

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

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

DLL-files.com - отличный репозиторий файлов Windows DLL и имеет практически все файлы DLL, которые существуют в Windows.

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

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

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

Шаг 4. Скопируйте файл Download 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 скопируйте файл. Перезагрузите компьютер и VOILA, теперь вы можете запустить игру / приложение, которое не открывалось и давая ошибку DLL, легко.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top