「MSVCR110.dll/MSVCR120.dll/VCRUNTIME140.DLLがないため、プログラムが開始できません」と表示された場合

広告

Visual Studioを使ってビルドされたVisual C++のアプリケーションを実行する場合には必要なランタイムコンポーネントがインストールされている必要があります。Windows用のPHPバイナリもVisual Studioを使ってビルドされていますのでランタイムが必要です。

PHPを利用した時に「MSVCR110.dll/MSVCR120.dll/VCRUNTIME140.DLLがないため、プログラムが開始できません」のようなエラーが表示された場合はランタイムがインストールされていないことが原因です。ここではランタイムの取得とインストール方法について解説します。

1.Visual Studioのバージョン毎に必要となるランタイム
2.ランタイムのインストール

Visual Studioのバージョン毎に必要となるランタイムは異なります。それぞれ必要なファイルと入手先は次の通りです。

Visual Studio 2012

Visual Studio 2012でビルドしたアプリケーションに必要なファイルは「MSVCR110.dll」です。入手先は「Visual Studio 2012 更新プログラム 4 の Visual C++ 再頒布可能パッケージ」です。

p2-1

Visual Studio 2013

Visual Studio 2013でビルドしたアプリケーションに必要なファイルは「MSVCR120.dll」です。入手先は「Visual Studio 2013 の Visual C++ 再頒布可能パッケージ」です。

p2-2

Visual Studio 2015

Visual Studio 2015でビルドしたアプリケーションに必要なファイルは「VCRUNTIME140.dll」です。入手先は「Visual Studio 2015 の Visual C++ 再頒布可能パッケージ」です。

p2-3

色々なバージョンのVisual Studioでビルドされたアプリケーションがインストールされている場合は、それぞれのランタイムが必要となります。

それでは実際にインストールを行ってみます。今回使用するPHP7のWindows用バイナリはVisual Studio 2015を使ってビルドされていますのでVisual Studio 2015用のランタイムをインストールしてみます。画面上の「ダウンロード」をクリックして下さい。

p2-4

ダウンロードするプログラムを選択する画面が表示されます。

p2-5

64bit版を使用されている方は「vc_redist.x64.exe」、32bit版を使用している場合は「vc_redist.x86.exe」にチェックをして下さい。今回は「vc_redist.x64.exe」にチェックをしました。チェックが終わりましたら「次へ」をクリックして下さい。

p2-6

ダウンロードが開始されますので適当な場所に保存して下さい。

続いてダウンロードしたファイルを実行してインストールを行います。次のような画面が表示されますのでライセンス条項及び使用条件をよく読んで頂き、同意できる場合には「ライセンス条項及び使用条件に同意する」にチェックをして下さい。チェックが終わりましたら「インストール」をクリックして下さい。

p2-7

次のように表示されればインストールは完了です。

p2-8

他のバージョンのランタイムでもダウンロードとインストールの手順は同じです。

( Written by Tatsuo Ikura )