PHP 7:缺少VCRUNTIME140.dll


168

在Windows上启动PHP 7时出现错误。当我php在命令行上运行时,它返回一个带有系统错误的消息框:

该程序无法启动,因为您的计算机缺少VCRUNTIME140.dll。尝试重新安装该程序以解决此问题。

在那之后,CLI是崩溃了。

由于我不想从外部网站安装DLL文件,因此我不知道该如何解决!

PHP版本: 7.0.0alpha1 VC14 x64线程安全


8
在此基础上提名重新开放:“它们直接涉及主要用于编程的工具”。这个问题是对的。
亚当·卡梅隆2015年

我什至遇到同样的问题是VC6 x84,但无法安装wampserver。我已经在整个Google搜索过。请帮助我。
帕万·巴迪

@Pavan Baddi-我也遇到了某些VC版本无法与WAMP一起使用的麻烦。与Wampserver x64 3.0.6一起安装了用于Visual Studio 2012 x64和x86(以管理员权限运行)的Visual C ++可再发行组件,它现在可以正常工作。
user1228907 '17

Answers:


228

边栏的的PHP 7阿尔法下载页面,它这样说:

VC9,VC11和VC14较新版本的PHP是使用VC9,VC11或VC14(分别是Visual Studio 2008、2012或2015编译器)构建的,并包括性能和稳定性方面的改进。

  • VC9版本要求您安装Visual Studio 2008 SP1 x86x64的Visual C ++可再发行组件

  • VC11版本需要安装Visual Studio 2012 x86或x64的Visual C ++可再发行组件

  • VC14版本需要安装Visual Studio 2015 x86或x64的Visual C ++可再发行组件

这些链接中的一些存在问题,因此这些文件也可以从Softpedia获得

对于PHP 7 alpha,这是最后一个需要的选项。

我认为该信息的位置很差,因为它被边缘化了(即:它基本上是在边际上!),而实际上对于软件的运行至关重要。

我记录了我在PHP中的 Windows 8.1上启动并运行PHP 7 alpha的经历:在Windows 8.1上运行PHP7 alpha的经历,它涵盖了一些可能出现的症状。他们不在这个问题的范围内,但可能会帮助其他人。

此问题的其他症状:

  • Apache没有启动,声称php7apache2_4.dll尽管确实存在,但声称仍然丢失,并且在任何日志中均未提供其他任何内容。
  • php-cgi.exe - The FastCGI process exited unexpectedly (根据下面的@ftexperts的评论)

尝试的解决方案:

  • 使用php7apache2_4.dll早期PHP 7开发人员版本中的文件。这没有用。

(我包括那些用于Google的功能。)


IIS7中的另一个症状:“ php-
cgi.exe

没有microsoft.com下载链接对我有用(网关超时错误)。替代后视镜的位置:softpedia.com/get/Programming/Components-Libraries/...
rybo111

@ rybo111我认为这是暂时的还是您的问题?他们对我来说还可以(没检查全部)。但是我想我会添加您的链接作为答案的替代方法!干杯。
亚当·卡梅伦

我安装了几乎所有版本,但在安装2015 Update RC 2 .dll错误版本时却遇到了相同的错误VCRUNTIME140.dll,这可能会帮助其他人
Naveed


25

适用于Visual Studio 2015(x32位版本)的 Visual C ++可再发行组件 -RC。

这应该纠正这一点。您可以通过google搜索DLL 什么,但这并不重要。

PS:这也是微软的官方消息:)

我在哪里找到它:下载(Visual Studio)


我用google搜索了DLL,但找不到。我会尝试这个包。
费利克斯·德信

4
适用于32位和64位发行版的可能更好的链接:microsoft.com/en-us/download/details.aspx?
Adam Cameron


14

如果您遵循亚当的指示并且仍然遇到此错误,请确保已安装正确的变体(x86或x64)。

我有VC14x64和PHP7x86,但仍然出现此错误。将PHP7更改为x64可以解决此问题。很容易会想念您不小心安装了错误的版本。


11

对于这样的事情,您不会盲目地单击“ 下一步 ”,“ 下一步 ”和“ 我同意 ”。

WAMP会在安装期间和安装之前告知您以下信息:

Wampserver 2.4、2.5和3.0需要MSVC运行时库VC9,VC10,VC11,即使您仅将Apache和PHP版本与VC11一起使用也是如此。PHP 7和Apache 2.4.17需要运行时VC13,VC14

VC9软件包(Visual C ++ 2008 SP1) http://www.microsoft.com/zh-cn/download/details.aspx?id=5582 http://www.microsoft.com/zh-cn/download/details.aspx ?id = 2092

VC10软件包(Visual C ++ 2010 SP1) http://www.microsoft.com/zh-cn/download/details.aspx?id=8328 http://www.microsoft.com/zh-cn/download/details.aspx ?id = 13523

VC11软件包(Visual C ++ 2012 Update 4)要下载的两个文件VSU4 \ vcredist_x86.exe和VSU4 \ vcredist_x64.exe位于同一页上:http : //www.microsoft.com/zh-cn/download/details。 aspx?id = 30679

VC13软件包](Visual C ++ 2013 [)。要下载的两个文件VSU4 \ vcredist_x86.exe和VSU4 \ vcredist_x64.exe在同一页面上:https : //www.microsoft.com/zh-cn/download/details。 aspx?id = 40784

VC14软件包(Visual C ++ 2015)要下载的两个文件vcredist_x86.exe和vcredist_x64.exe位于同一页上:http : //www.microsoft.com/zh-cn/download/details.aspx?id=48145

即使不使用64位Wampserver,也必须同时安装32位和64位版本

重要说明:确保以管理员权限运行所有Microsoft Visual C ++安装(右键单击→以管理员身份运行)。只是错过了这一小步骤,浪费了我一整天。


1
我无法编辑您的文章,但对于wamp用户,可以参考此wampserver.aviatechno.net。有一个检查工具可以验证是否已安装所有VC软件包。除了@ user3284463提到的软件包之外,还必须安装Visual C ++ 2008 SP1 ATL安全更新Redist。程序包和Visual C ++ 2008 SP1 MFC安全更新重做。包。所有需要的信息都在上面的链接中。
georgeos

3

在Windows 7上使用Windows安装程序版本安装Robot Framework 2.9.2时遇到相同的问题。

我可以解决此问题,安装VC14版本需要从Microsoft网站下载 “安装了Visual Studio 2015 x86或x64的Visual C ++可再发行组件” 。


1

我遇到同样的错误,发现我的 Microsoft Visual C ++是32位,而Windows是64位。我尝试安装32位WAMP 7,问题已解决。

如果Visual Studio是32位,也许我们需要安装WAMP 32位。反之亦然。


-4

通常,这是您的PHP配置中的错误。

实际上很容易弄清楚到底发生了什么:

  • 使用标准phpinfo()脚本创建一个小文件(test.php)
  • 打开命令提示符
  • 使用小文件手动启动php,例如'“ \ program files \ php \ php.exe” test.php
  • 阅读错误消息:-)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.