Подтвердить что ты не робот

Msvcr110.dll отсутствует при ошибке компьютера при установке PHP

Я пытаюсь установить PHP (5.5). Я извлек zip файл в папку C:\php. И я также установил системную переменную "Путь" в C:\php. Но когда я открываю командную строку и набираю php, я получаю сообщение об ошибке:

Программа не может запускаться, поскольку MSVCR110.dll отсутствует в вашем компьютер. Попробуйте переустановить программу, чтобы устранить эту проблему.

Я проверил эту DLL в каталоге C:\Windows\System32, и я смог найти там файл. Как избавиться от этой ошибки? Любая помощь будет оценена.

Спасибо в Advance.

4b9b3361

Ответ 1

Вам необходимо установить библиотеки Visual С++: http://www.microsoft.com/en-us/download/details.aspx?id=30679

Как упоминалось Стюартом Маклафлином, убедитесь, что вы получаете версию x86, даже если вы используете 64-разрядную ОС, потому что PHP нуждается в 32-разрядных библиотеках.

Ответ 2

Поскольку ссылка на этот вопрос появляется на самом верху возвращенных результатов при поиске "php MSVCR110.dll" (не говоря уже о том, что он получил 100k + просмотров и растет), вот некоторые дополнительные заметки, которые могут найти удобно в вашем поиске решения MSVCR110.dll mistery...

Подход, описанный в ответе, действителен не только для случая MSVCR110.dll, но также применяется, когда вы ищете другие версии, такие как новые MSVCR71.dll, и я обновил ответ, чтобы охватить VC15, даже если он не был выше.


В http://windows.php.net/ вы можете прочитать:

VC9, VC11 и VC15

Более свежие версии PHP построены с VC9, VC11 или VC15 (Соответственно, Visual Studio 2008, 2012 или 2015) и включают улучшения производительности и стабильности.

В строках VC9 требуется, чтобы Visual С++ распространялся для Visual Studio 2008 Установлен пакет обновления 1 (SP1) для x86 или x64.

В строках VC11 требуется, чтобы Visual С++ распространялся для Visual Studio 2012 x86 или x64.

В строках VC15 требуется, чтобы Visual С++ распространялся для Visual Studio 2015 x86 или x64.

это очень важно, поскольку вам нужно не только установить Visual С++ Redistributable, но и вам нужна правильная версия, и какая из них правильная, зависит от того, какую версию PHP вы используете. Обратите внимание на то, какую версию PHP для Windows вы извлекаете, особенно обратите внимание на этот суффикс "VCxx", потому что, если вы устанавливаете PHP, который требует VC9 при наличии распространяемых VC11, он не будет работать, поскольку зависимость времени выполнения просто не заполняется. Вопреки тому, что некоторые могут подумать, вам нужна именно версия, требуемая, поскольку новые версии не включают/предоставляют более старые (так что VC11 не предоставляет VC9, а VC15 не выполняет зависимость VC11 и VC9.

Например, имя архива php-5.6.4-nts-Win32-VC11-x86 говорит нам, что он не является потокобезопасным (nts), 32-разрядным ( x86), и ему необходимо, чтобы Visual Studio 2012 распространялся ( VC11).

Большинство поисковых запросов, которые я действительно приводил к перераспределению VC9, поэтому в случае постоянных сбоев в работе, если это возможно, попробуйте установить другую сборку PHP, чтобы убедиться, что вы случайно не сталкиваетесь несовместимые версии.


Ссылки для скачивания

Обратите внимание, что вы используете 32-битную версию PHP, поэтому вам нужно 32-разрядное распространяемое (x86), даже ваша версия Windows - 64 бит!

  • VC9: Visual С++ Redistributable для Visual Studio 2008: x86 или x64
  • VC11: Visual С++, распространяемый для Visual Studio 2012: x86 или x64
  • VC15: Visual С++, распространяемый для Visual Studio 2015: x86 или x64

Ответ 3

Я на 64-битной системе, и я получил это только после установки как 32, так и 64-разрядных версий распространяемого. Я не пробовал 64-разрядную версию сам по себе из-за предупреждений других плакатов об использовании 32-битной версии (и мне слишком ленив, чтобы удалить 32-битную версию сейчас, когда я ее работаю), поэтому я не знаю, 32-битная версия нужна или нет в таких случаях, как моя.

Ответ 4

Мне не хватало MSVCR110.dll. Который я исправил. Я мог бы запустить php из командной строки, но не с веб-сервера. Затем я нажал на php-cgi.exe, и он дал мне ответ. Не удалось скачать файл php5.dll(я скачал неправильную копию). Итак, для моего 2012 IIS я заново установил с помощью php x86 без потокового безопасного почтового индекса.

Ответ 5

Чтобы определить, какая версия VC x86/x64 необходима:

Перейдите в диспетчер IIS > Отображения обработчикa > щелкните правой кнопкой мыши, а затем отредактируйте *.php путь. В поле "Исполняемое (необязательное)" примечание, в котором установлена ​​версия программных файлов php-cgi.exe.