PHP 7: Thiếu VCRUNTIME140.dll


168

Tôi gặp lỗi khi khởi động PHP 7 trên Windows. Khi tôi chạy phptrên dòng lệnh, nó sẽ trả về một hộp thông báo có lỗi hệ thống:

Chương trình không thể bắt đầu vì VCRUNTIME140.dll bị thiếu khỏi máy tính của bạn. Hãy thử cài đặt lại chương trình để khắc phục vấn đề này.

Sau đó, CLIlà sụp đổ.

Vì tôi không muốn cài đặt tệp DLL từ một trang web bên ngoài, tôi không biết cách khắc phục điều này!

Phiên bản PHP: 7.0.0alpha1 VC14 x64 Chủ đề an toàn


8
Đề cử mở lại trên cơ sở này: "chúng liên quan trực tiếp đến các công cụ được sử dụng chủ yếu để lập trình". Điều này đúng với câu hỏi này.
Adam Cameron

vấn đề tương tự với tôi là VC6 x84 nhưng không thể cài đặt wamperver. tôi đã tìm kiếm trên google. Xin vui lòng giúp tôi.
Pavan Baddi

@Pavan Baddi - Tôi cũng gặp rắc rối với một số phiên bản VC không hoạt động với WAMP của mình. Đã cài đặt Visual C ++ Redistributable cho Visual Studio 2012 x64 và x86 (chạy với đặc quyền quản trị viên) cùng với Wamperver x64 3.0.6 và nó hoạt động ngay bây giờ.
dùng1228907

Câu trả lời:


228

Trên thanh bên của trang tải xuống PHP 7 alpha , nó có ghi điều này:

VC9, VC11 & VC14 Các phiên bản PHP gần đây hơn được xây dựng với VC9, VC11 hoặc VC14 (trình biên dịch Visual Studio 2008, 2012 hoặc 2015) và bao gồm các cải tiến về hiệu suất và tính ổn định.

  • Các bản dựng VC9 yêu cầu bạn phải cài đặt Visual C ++ Redistributable cho Visual Studio 2008 SP1 x86 hoặc x64

  • Các bản dựng VC11 yêu cầu phải cài đặt Visual C ++ Redistributable cho Visual Studio 2012 x86 hoặc x64

  • Các bản dựng VC14 yêu cầu phải cài đặt Visual C ++ Redistributable cho Visual Studio 2015 x86 hoặc x64

Có một số vấn đề với một số các liên kết đó, vì vậy các tệp cũng có sẵn từ Softpedia .

Trong trường hợp của PHP 7 alpha, đó là tùy chọn cuối cùng bắt buộc.

Tôi nghĩ rằng vị trí của thông tin này là kém, vì nó bị gạt ra bên lề (nghĩa là: về cơ bản nó nằm ở lề!) Trong khi nó thực sự quan trọng đối với phần mềm để chạy.

Tôi đã ghi lại những kinh nghiệm của mình khi khởi động PHP 7 alpha và chạy trên Windows 8.1 trong PHP: để PHP7 alpha chạy trên Windows 8.1 và nó bao gồm một số triệu chứng khác có thể xuất hiện. Họ nằm ngoài phạm vi của câu hỏi này nhưng có thể giúp đỡ người khác.

Triệu chứng khác của vấn đề này:

  • Apache không bắt đầu, tuyên bố php7apache2_4.dllbị thiếu mặc dù nó chắc chắn được đặt ra và không cung cấp gì khác trong bất kỳ nhật ký nào.
  • php-cgi.exe - The FastCGI process exited unexpectedly (theo nhận xét của @ ftexperts bên dưới)

Giải pháp cố gắng:

  • Sử dụng php7apache2_4.dlltệp từ bản dựng PHP 7 dev trước đó. Điều này đã không làm việc.

(Tôi bao gồm những người cho khả năng hoạt động.)


Một triệu chứng khác trong IIS7: "php-cgi.exe - Quá trình FastCGI bất ngờ thoát ra"
ftexperts

Không có liên kết tải xuống microsoft.com nào hoạt động với tôi (lỗi hết thời gian chờ cổng). Gương thay thế có ở đây: softpedia.com/get/Programming/Components-Lologists/,
rybo111

@ rybo111I nghĩ nó là thoáng qua hay vấn đề của bạn? Họ ổn với tôi (không kiểm tra tất cả trong số họ). Nhưng tôi nghĩ tôi sẽ thêm liên kết của bạn như là một thay thế cho câu trả lời! Chúc mừng.
Adam Cameron

Tôi cài đặt hầu hết các phiên bản nhưng nhận được VCRUNTIME140.dll lỗi tương tự khi tôi cài đặt phiên bản 2015 Cập nhật RC 2 lỗi .dll có được đi, có thể giúp người khác
Naveed

1
liên kết tải xuống hiện tại microsoft.com/en-us/doad/details.aspx?id=52685
mdo123

25

Visual C ++ Redistributable cho Visual Studio 2015 (phiên bản x32 bit) - RC.

Điều này sẽ sửa điều đó. Bạn có thể google cho DLL là gì , nhưng điều đó không quan trọng.

PS: Nó cũng chính thức từ Microsoft :)

Nơi tôi tìm thấy nó: Tải xuống (Visual Studio)


Tôi google DLL nhưng tôi không tìm thấy. Tôi sẽ thử gói này.
Félix Desjardins

4
Liên kết tốt hơn có thể có cho cả các bản phát hành 32 và 64 bit: microsoft.com/en-us/doad/details.aspx?id=46881
Adam Cameron

17

Cài đặt vc_redist.x86.exe hoạt động với tôi mặc dù bạn có máy 64 bit.


điều này nên được bình luận không phải là asnwer
Usman Maqbool

@AdamCameron đã cung cấp liên kết này. Vui lòng thêm một nhận xét cho câu trả lời của anh ấy, và nói những gì làm việc cho bạn.
Félix Desjardins

Tôi sử dụng phiên bản 32 bit của vc_redist.x86.exe mặc dù tôi có nền tảng 64 (win10)
Edang Jeorlie

14

Nếu bạn đã làm theo hướng dẫn của Adam và bạn vẫn gặp phải lỗi này, hãy đảm bảo bạn đã cài đặt đúng các biến thể (x86 hoặc x64).

Tôi đã có VC14x64 với PHP7x86 và tôi vẫn gặp lỗi này. Thay đổi PHP7 thành x64 đã sửa nó. Thật dễ dàng để nhớ bạn vô tình cài đặt phiên bản sai.


11

Đối với những thứ như thế này, bạn đừng mù quáng nhấp vào ' Tiếp theo ', ' Tiếp theo ' và ' Tôi đồng ý '.

WAMP thông báo cho bạn về điều này trong và trước khi cài đặt:

Các thư viện thời gian chạy MSVC VC9, VC10, VC11 được yêu cầu cho Wamperver 2.4, 2.5 và 3.0, ngay cả khi bạn chỉ sử dụng các phiên bản Apache và PHP với VC11. Runtimes VC13, VC14 được yêu cầu cho PHP 7 và Apache 2.4.17

Gói VC9 (Visual C ++ 2008 SP1) http://www.microsoft.com/en-us/doad/details.aspx?id=5582 http://www.microsoft.com/en-us/doad/details.aspx ? id = 2092

Các gói VC10 (Visual C ++ 2010 SP1) http://www.microsoft.com/en-us/doad/details.aspx?id=8328 http://www.microsoft.com/en-us/doad/details.aspx ? id = 13523

Gói VC11 (Cập nhật Visual C ++ 2012 4) Hai tệp VSU4 \ vcredist_x86.exe và VSU4 \ vcredist_x64.exe để tải xuống trên cùng một trang: http://www.microsoft.com/en-us/doad/details. aspx? id = 30679

Gói VC13] (Visual C ++ 2013 [) Hai tệp VSU4 \ vcredist_x86.exe và VSU4 \ vcredist_x64.exe sẽ được tải xuống trên cùng một trang: https://www.microsoft.com/en-us/doad/details. aspx? id = 40784

Các gói VC14 (Visual C ++ 2015) Hai tệp vcredist_x86.exe và vcredist_x64.exe sẽ được tải xuống trên cùng một trang: http://www.microsoft.com/en-us/doad/details.aspx?id=48145

Bạn phải cài đặt cả hai phiên bản 32 và 64 bit , ngay cả khi bạn không sử dụng Wamperver 64 bit.

LƯU Ý QUAN TRỌNG : Đảm bảo chạy tất cả các cài đặt Microsoft Visual C ++ với quyền quản trị viên (nhấp chuột phải → Chạy với tư cách Quản trị viên ). Chỉ thiếu bước nhỏ này đã lãng phí cả ngày của tôi.


1
Tôi không thể chỉnh sửa bài đăng của bạn nhưng đối với người dùng wamp, có thể tham khảo wamperver.aviatechno.net này Có một công cụ kiểm tra để xác thực nếu tất cả các gói VC được cài đặt. Bổ sung cho các gói được đề cập bởi @ user3284463, phải được cài đặt Visual C ++ 2008 SP1 ATL Security Update Redist. Gói và cập nhật bảo mật MFC C ++ 2008 SP1 MFC. Gói. Tất cả thông tin cần thiết là trong liên kết ở trên.
georgeos

3

Tôi gặp vấn đề tương tự khi cài đặt Robot Framework 2.9.2 bằng phiên bản cài đặt Windows trên Windows 7.

Tôi có thể giải quyết nó khi cài đặt các bản dựng VC14 yêu cầu phải có "Visual C ++ Redistributable cho Visual Studio 2015 x86 hoặc x64 được cài đặt" từ trang web của Microsoft .


1

Tôi đã cùng một lỗi và thấy rằng tôi Microsoft Visual C ++ là 32 bit và Windows 64 bit. Tôi đã cố gắng cài đặt WAMP 7 32 bit và vấn đề đã được giải quyết.

Có lẽ chúng ta cần cài đặt WAMP 32 bit nếu Visual Studio là 32 bit. Và ngược lại.


-4

Thông thường đây là một lỗi trong cấu hình PHP của bạn.

Thật ra khá dễ để biết chính xác chuyện gì đang xảy ra:

  • Tạo một tệp nhỏ (test.php) với tập lệnh phpinfo () tiêu chuẩn
  • Mở một dấu nhắc lệnh
  • Bắt đầu php thủ công bằng cách sử dụng tệp nhỏ, ví dụ: '"\ tệp chương trình \ php \ php.exe" test.php
  • Đọc các thông báo lỗi :-)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.