Nie można uruchomić php-cgi.exe - brakuje pliku MSVCR110.dll [zamknięty]

48

Próbuję skonfigurować nginx i php na moim komputerze z systemem Windows, ale za każdym razem, gdy próbuję zacząć php-cgi.exe, pojawia się błąd systemu.

Nie można uruchomić programu, ponieważ na komputerze brakuje MSVCR110.dll. Spróbuj ponownie zainstalować problem, aby rozwiązać ten problem.

Używam Wnmp do uruchamiania moich programów i pobrałem do niego najnowszą wersję PHP 5.5 (wersja 32-bitowa).

Mam Visual C ++ 2008 x86, C ++ 2010 x64 i C ++ 2010 x86.

Czego mi brakuje i dlaczego nie mogę wyświetlić listy programów wymaganych do działania PHP (cgi)?

Marwelln
źródło
17
Jak do cholery mogło to być nie na temat? Naprawdę chciałbym wiedzieć. To dla mnie problem z bonafide.
hopeseekr
4
tak, to głupie. to jest prawdziwy problem i poniższa poprawka zadziałała dla mnie
Andy Brudtkuhl
Być może będzie to lepiej pasować do StackOverflow, ponieważ dotyczy narzędzi programistycznych.
James
6
Nienawidzę tego, gdy moderatorzy oceniają rzeczy jako nie na temat. Dotarłem tutaj przez Google, wpisując dokładną frazę. Nie jest to dla mnie nie na temat i jest to jedyne miejsce, w którym znalazłem odpowiedź po wielu poszukiwaniach.
LonnieBest,

Odpowiedzi:

75

Potrzebujesz VS C ++ 2012. Idź tutaj: http://www.microsoft.com/en-us/download/details.aspx?id=30679

Musisz pobrać wersję x86, jeśli zainstalujesz wersję 64-bitową, spowoduje to ten sam błąd.

Nathan C.
źródło
1
Nawet jeśli wersja php to 5.5.3 i dla systemów 64-bitowych?
Muhammad Gelbana,
4
@MuhammadGelbana Tak, opiera się na niektórych funkcjach 32-bitowych.
Nathan C
4
Potrzebowałem obu, najpierw zainstalowałem wersję 32-bitową, a komunikat o błędzie nie powiódł się, a następnie zainstalowałem wersję 64-bitową i wszystko poszło dobrze. Dzieje się tak w centrum danych systemu Windows Server 2012, używając PHP 5.5 (5.5.4)
rism
2
Wszystkie pozostałe strony sugerowały, że potrzebuję 2010 roku, ale w końcu natknąłem się na twoją odpowiedź. Bardzo wdzięczny! Podobnie jak rism, musiałem zainstalować zarówno 32-bitowy, jak i 64-bitowy, zanim zadziałało.
LonnieBest,
2
FYI nazwa brakującego pliku jest ważna. Jeśli szukasz, MSVCR110.dllto jest odpowiedź. Jeśli szukasz MSVCR100.dll(nie numer wersji to 100 zamiast 110), musisz pobrać VS C++ 2010pakiet.
DavidG