メインコンテンツまでスキップ

Visual C++ランタイムファイルが見つからない場合のエラー

Visual C++ランタイムファイルは、Microsoft Visual C++で開発されたアプリケーションを実行するために必要なライブラリです。これらのファイルが見つからない場合、アプリケーションは起動できず、エラーメッセージが表示されます。ランタイムファイルには様々な種類があり、基本的には最新のVisual C++再頒布可能パッケージをインストールすることで解決できます。以下に、よく見られるエラーメッセージとその対処方法をまとめます。

バージョン番号

msvcr120.dllやmsvcp140.dllのように、ファイル名の末尾に含まれている数字はVisual C++のバージョンと対応しています。ファイルが見つからないエラーが表示される場合、ファイル名に含まれる数字と対応するバージョンのVisual C++再頒布可能パッケージをインストールする必要があります。下記の表に組み合わせを記載します。

ファイル名のバージョンVisual C++バージョンDLL名の例
42 or 無しVisual C++ 6.0 or それ以前msvcrt.dll, mfc42.dll
70Visual C++ 2002msvcr70.dll, mfc70.dll
71Visual C++ 2003msvcr71.dll, mfc71.dll
80Visual C++ 2005msvcr80.dll, mfc80.dll
90Visual C++ 2008msvcr90.dll, mfc90.dll
100Visual C++ 2010msvcr100.dll, mfc100.dll
110Visual C++ 2012msvcr110.dll, mfc110.dll
120Visual C++ 2013msvcr120.dll, mfc120.dll
140Visual C++ 2015以降vcruntime140.dll, mfc140.dll

msvcr***.dll

Visual C++ 2013以前のバージョンで作成されたアプリケーションを実行したときに表示される可能性があります。msvcr***.dllはVisual C++ランタイムの一部であり、対応するVisual C++再頒布可能パッケージをインストールすることで解決できます。

MSVCR120.dllが見つからない

MSVCR120.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

msvcr***d.dll

Visual C++ 2013以前のバージョンでデバッグビルドされたアプリケーションを実行したときに表示される可能性があります。Visual C++再頒布可能パッケージのデバッグバージョンをインストールすることで解決できます。ただし、デバッグバージョンの再頒布可能パッケージは再頒布できませんので、サードパーティ製品で"D"が付くDLLが必要な場合はアプリケーションベンダーがビルド方法を誤っている可能性があります。

MSVCR120D.dllが見つからない

MSVCR120D.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

api-ms-win-crt-***.dll

Visual C++ 2015以降のバージョンで作成されたアプリケーションを実行したときに表示される可能性があります。api-ms-win-crt-***.dllはUniversal C Runtime (UCRT)の一部であり、Visual C++再頒布可能パッケージをインストールすることで解決できます。UCRTはWindows 10以降のバージョンではOSに組み込まれていますが、Windows 7や8.1などの古いバージョンでは再頒布可能パッケージをインストールする必要があります。

api-ms-win-crt-***.dllが見つからない

コンピューターに api-ms-win-crt-stdio-|1-1-0.dll がないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてみてください。

ucrtbased.dll

Visual C++ 2015以降のバージョンでデバッグビルドされたアプリケーションを実行したときに表示される可能性があります。Visual C++再頒布可能パッケージのデバッグバージョンをインストールすることで解決できます。ただし、デバッグバージョンの再頒布可能パッケージは再頒布できませんので、サードパーティ製品で"D"が付くDLLが必要な場合はアプリケーションベンダーがビルド方法を誤っている可能性があります。

ucrtbased.dllが見つからない

ucrtbased.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

vcruntime140.dll

Visual C++ 2015以降のバージョンで作成されたコンソールアプリケーションやWindowsアプリケーションを実行したときに表示される可能性があります。Visual C++再頒布可能パッケージをインストールすることで解決できます。

VCRUNTIME140.dllが見つからない

vcruntime140.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

vcruntime140d.dll

Visual C++ 2015以降のバージョンでデバッグビルドされたアプリケーションを実行したときに表示される可能性があります。Visual C++再頒布可能パッケージのデバッグバージョンをインストールすることで解決できます。ただし、デバッグバージョンの再頒布可能パッケージは再頒布できませんので、サードパーティ製品で"D"が付くDLLが必要な場合はアプリケーションベンダーがビルド方法を誤っている可能性があります。

VCRUNTIME140D.dllが見つからない

vcruntime140D.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

vcruntime140_1.dll

Visual C++ 2019以降のバージョンで作成されたアプリケーションを実行したときに表示される可能性があります。vcruntime140_1.dllはVisual C++ランタイムの一部であり、Visual C++再頒布可能パッケージをインストールすることで解決できます。なお、vcruntime140_1.dllはVisual C++ 2019以降のバージョンで追加されたファイルとなっており、Visual C++ 2015やVisual C++ 2017の再頒布可能パッケージをインストールしても解消しませんので注意してください。

VCRUNTIME140_1.dllが見つからない

VCRUNTIME140_1.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

mfc***u.dll

MFCアプリケーションを実行したときに表示される可能性があります。対応するバージョンのVisual C++再頒布可能パッケージをインストールすることで解決できます。

mfc140u.dllが見つからない

mfc140u.dll が見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。