MFC アプリを起動したときに mfc120.dll が見つからない(または mfc120u.dll)と出た場合、必要なのは Visual C++ 2013 の再頒布可能パッケージです。mfc120 という名前は Visual Studio 2013 でビルドされたことを示します。
mfc120u.dll が見つからないため、コードの実行を続行できません。
プログラムを再インストールすると、この問題が解決する場合があります。
この記事は mfc120.dll / mfc120u.dll 専用の対処に絞ります。
| 表示されたDLL名 | 読む記事 |
|---|---|
mfc120.dll/mfc120u.dllだけを解決したい | この記事:VC++ 2013専用の導入手順 |
mfc140.dll、mfc100.dllなど複数世代をDLL名から判別したい | DLL名から再配布パッケージを特定する早見表 |
まず確認:mfc120.dll は VC++ 2013 のランタイム
| 出てきた DLL 名 | 必要なパッケージ | 意味 |
|---|---|---|
mfc120.dll / mfc120u.dll | Visual C++ 2013 再頒布可能パッケージ | Visual Studio 2013(ツールセット v120)でビルドされた |
mfc120u.dll は Unicode 版で、mfc120.dll と同じ Visual C++ 2013 のパッケージで解決します。
注意したいのはここです。Visual Studio 2026 など新しい環境に付いてくる「Visual C++ 2015-2022 再頒布可能パッケージ」を入れても、mfc120.dll は解決しません。2013 のランタイムは 2015-2022 とは別系列で、別パッケージとして配布されているからです。
検証環境:Visual Studio 2026(対象ランタイムは Visual C++ 2013)
手順1:必要なのが x86 か x64 かを確認する
VC++ 2013 の再頒布パッケージは x86(32bit) と x64(64bit) に分かれています。入れるべきなのは OS のビット数ではなく、アプリ(または mfc120.dll を要求している実行ファイル)のビット数に合わせたものです。
- ソースがある場合は、Visual Studio の構成プラットフォームを確認します。
Win32ならx86、x64ならx64です。 - 実行ファイルしかない場合は、配布元の動作環境やダウンロード名でx86/x64を確認します。DLL不足で起動できない状態では、タスクマネージャーで実行中プロセスを確認できません。
64bit の Windows でも、32bit アプリには x86 版のランタイムが必要です。判断に迷う場合は、x86 と x64 の両方を入れてしまって構いません。
手順2:VC++ 2013 再頒布可能パッケージを入れる
Microsoft 公式の「Visual C++ Redistributable Packages for Visual Studio 2013」を入手します。最新ランタイムのページからも、過去バージョンとして 2013 の配布ページへたどれます。
→ サポートされている最新の Visual C++ 再頒布可能パッケージ(Microsoft 公式・過去バージョンへのリンクあり)
ダウンロードするファイルは、手順1で確認したビット数に合わせます。2013 のファイル名は VC_redist ではなく vcredist です(2015-2022 とは名前が違います)。
vcredist_x64.exe→ 64bit アプリ向けvcredist_x86.exe→ 32bit(Win32)アプリ向け

ダウンロードした .exe を、エラーが出ている PC(実行環境)で実行してインストールします。完了したらアプリを起動し直し、エラーが消えたか確認します。
それでも mfc120.dll が消えないとき
- ビット数が合っているかを確認します。32bit アプリに x64 版だけを入れても解決しません。迷ったら x86 / x64 の両方を入れます。
- 最新版(2015-2022)だけで済ませていないかも見ます。
mfc120.dllには 2013 のパッケージが必須で、最新ランタイムは別物です。 - 要求しているのが本体アプリかプラグインかも切り分けます。自作アプリ本体は新しい環境でビルドされていても、読み込むサードパーティ製の DLL やプラグインが VS2013 製だと
mfc120.dllを要求します。その場合も対処は同じ 2013 ランタイムの導入です。 - インストール後にアプリを再起動したかも確認します。起動し直さないと反映されません。
関連記事
mfc140.dll/mfc100.dllなど他の DLL 名も含めた早見表 → 【MFC】mfc140.dll / mfc120.dll / mfc100.dll が見つからない:DLL名から正しい再配布パッケージを特定する手順- 起動時に
0xc000007bが出る(32bit/64bit の取り違え)→ 【MFC】0xc000007b エラーの直し方:32bit/64bit のビット数不一致で起動しない原因と修正手順
まとめ
mfc120.dll/mfc120u.dllは Visual C++ 2013 のランタイム。VS2013 でビルドされた証拠。- 最新(2015-2022)の再頒布パッケージでは直らない。2013 専用パッケージが要る。
- アプリのビット数に合わせて
vcredist_x86.exe/vcredist_x64.exeを入れる。迷ったら両方。
