Visual C++のバージョン一覧を完全解説!歴史から最新版まで

プログラミング・IT

「パソコンに『Microsoft Visual C++ 再頒布可能パッケージ』がたくさんインストールされているけど、これって何?」

そんな疑問を持ったことはありませんか?

Visual C++は、Windowsアプリケーション開発に欠かせないツールです。この記事では、Visual C++のバージョンの歴史から、各バージョンの特徴、そしてよく目にする「再頒布可能パッケージ」について、分かりやすく解説していきます。

スポンサーリンク

Visual C++とは?

Visual C++(ビジュアル・シープラスプラス)とは、マイクロソフトが提供するC++プログラミング言語の開発環境です。

正式には「Microsoft Visual C++」または「MSVC」と呼ばれ、以下のようなツールが含まれています。

  • コンパイラ:プログラムのソースコードを実行可能なファイルに変換するツール
  • 統合開発環境(IDE):プログラムを書いて、デバッグして、ビルドするための総合的な環境
  • ランタイムライブラリ:プログラムを実行するために必要な基本的な機能を集めたもの

Visual C++は、Windows向けのアプリケーション開発において事実上の標準となっており、多くの商用ソフトウェアがこの開発環境で作られています。

Visual C++ 再頒布可能パッケージとは?

Visual C++でビルド(作成)されたアプリケーションを実行するには、「Visual C++ 再頒布可能パッケージ」(Visual C++ Redistributable)が必要です。

これは、アプリケーションが動作するために必要なランタイムライブラリを集めたものなんですね。

例えば、ゲームをインストールしたときに「Visual C++ 2015-2022 再頒布可能パッケージ」が一緒にインストールされることがあります。これは、そのゲームがVisual C++で作られていて、動作に必要だからです。

Visual C++のバージョン番号の仕組み

Visual C++には、複数のバージョン番号が存在していて、ちょっと複雑です。

5つのバージョン番号

  1. Visual Studioのリリース年
    例:Visual Studio 2022
  2. Visual Studioの実際のバージョン番号
    例:Visual Studio 17.0
  3. Visual C++(MSVC)バージョン
    例:MSVC 14.30
  4. ツールセットバージョン
    例:v143
  5. コンパイラバージョン
    例:cl.exe 19.30

これらは全て同じ製品について異なる側面を表しているんです。

なぜこんなに複雑なの?

それぞれのバージョン番号には意味があります。

  • Visual Studioの年号:マーケティング用の分かりやすい名前
  • MSVCバージョン:バイナリ互換性を示す重要な番号
  • コンパイラバージョン:実際のコンパイラの技術的なバージョン

特に重要なのは「MSVCバージョン」で、このメジャー番号が同じであれば、バイナリ互換性がある(一緒に使える)ことを意味します。

Visual C++バージョンの歴史

それでは、Visual C++の長い歴史を見ていきましょう。

初期のバージョン(1993年〜)

Visual C++ 1.0(1993年2月)

最初の「Visual」C++です。それまでのコマンドライン中心の開発から、Windowsベースの統合開発環境へと大きく進化しました。

  • 16ビット開発用
  • MFC 2.0を含む
  • Windows 3.1 SDK付属

Visual C++ 1.5(1993年12月)

最も人気のあったWindows 3.x向け開発環境となりました。

  • MFC 2.5に更新
  • OLE 2.0とODBCサポート追加
  • CD-ROMでの提供が始まる

Visual C++ 2.0(1994年)

32ビット開発に対応した最初のバージョンです。

  • MFC 3.0を含む
  • Windows NT向け
  • 32ビット専用

Visual C++ 4.0(1995年)

Windows 95の登場に合わせてリリースされました。

  • MFC 4.0を含む
  • Windows 95とWindows NT対応
  • DirectX SDKが含まれる

Visual C++ 5.0(1997年)

コンパクトなバイナリを生成できるようになりました。

Visual C++ 6.0(1998年)

非常に人気が高く、長く使われたバージョンです。今でも一部で使われています。

  • Visual Studio 6.0に含まれる
  • Internet Explorer 4依存
  • HTML Helpシステム採用

.NET時代(2002年〜)

Visual C++ .NET 2002(2002年)

.NETフレームワークのサポートが追加されました。

  • Visual Studio .NET 2002に統合
  • C++/CLIサポート
  • UIが大幅に変更

Visual C++ .NET 2003(2003年)

  • Windows 2000以降が必要
  • 標準C++規格への準拠度が大きく改善
  • コンパイラバージョン:13.10(内部バージョン7.1)

年号ベースの命名(2005年〜)

Visual C++ 2005(2005年)

製品名が年号ベースになりました。

  • Visual Studio 2005に統合
  • 無料のExpress Editionが登場
  • コンパイラバージョン:14.0(内部バージョン8.0)
  • セキュリティ機能の強化

Visual C++ 2008(2008年)

  • Visual Studio 2008に含まれる
  • コンパイラバージョン:15.0(内部バージョン9.0)
  • TR1(Technical Report 1)サポート

Visual C++ 2010(2010年)

ビルドシステムがMSBuildに移行しました。

  • Visual Studio 2010に含まれる
  • コンパイラバージョン:16.0(内部バージョン10.0)
  • C++0x(後のC++11)の一部機能をサポート
  • ラムダ式、auto、nullptrなどの追加

Visual C++ 2012(2012年)

  • Visual Studio 2012に含まれる
  • コンパイラバージョン:17.0(内部バージョン11.0)
  • C++11のサポート強化
  • Windows 8対応

Visual C++ 2013(2013年)

  • Visual Studio 2013に含まれる
  • コンパイラバージョン:18.0(内部バージョン12.0)
  • C++11のサポートがさらに改善

モダンC++時代(2015年〜)

Visual C++ 2015(2015年7月)

重要なマイルストーンとなったバージョンです。

  • Visual Studio 2015に含まれる
  • MSVCバージョン:14.0
  • C++11、C++14のサポートが大幅に向上
  • Universal CRT(UCRT)の導入
  • Community Editionが登場(無料版の強化)

重要:Visual Studio 2015以降の互換性

Visual Studio 2015、2017、2019、2022で作られたプログラムは、バイナリ互換性があります。つまり、MSVCバージョンが全て14.xなので、同じランタイムライブラリが使えるんです。

Visual C++ 2017(2017年3月)

  • Visual Studio 2017に含まれる
  • Visual Studioバージョン:15.0
  • MSVCバージョン:14.1x
  • コンパイラバージョン:19.1x
  • C++17のサポート
  • より高速なコンパイル

Visual C++ 2019(2019年4月)

  • Visual Studio 2019に含まれる
  • Visual Studioバージョン:16.0
  • MSVCバージョン:14.2x
  • コンパイラバージョン:19.2x
  • C++20の一部機能をサポート
  • IntelliCodeによるAI支援

Visual C++ 2022(2021年11月)

最新の主要バージョンです。

  • Visual Studio 2022に含まれる
  • Visual Studioバージョン:17.0
  • MSVCバージョン:14.3x〜14.4x
  • コンパイラバージョン:19.3x〜19.4x
  • 64ビットIDEに対応(これまでは32ビット)
  • C++20のサポート強化
  • C++23の一部機能

主要バージョンの一覧表

製品名リリース年Visual StudioバージョンMSVCバージョンコンパイラバージョン(_MSC_VER)主な特徴
Visual C++ 1.01993年N/AN/A8.00最初のVisual C++
Visual C++ 6.01998年6.06.012.00長く使われた人気版
Visual C++ .NET 20032003年7.17.113.10標準C++準拠度向上
Visual C++ 20052005年8.08.014.00Express Edition登場
Visual C++ 20082008年9.09.015.00TR1サポート
Visual C++ 20102010年10.010.016.00C++11の一部サポート
Visual C++ 20122012年11.011.017.00C++11強化
Visual C++ 20132013年12.012.018.00C++11改善
Visual C++ 20152015年14.014.019.00C++14サポート
Visual C++ 20172017年15.014.1x19.1xC++17サポート
Visual C++ 20192019年16.014.2x19.2xC++20一部サポート
Visual C++ 20222021年17.014.3x〜14.4x19.3x〜19.4x64ビットIDE、C++20強化

再頒布可能パッケージのバージョン対応

一般ユーザーが目にする「Visual C++ 再頒布可能パッケージ」について、詳しく見ていきましょう。

パッケージのバージョンと対応関係

Visual C++ 2005 再頒布可能パッケージ

  • MSVCバージョン:8.0
  • ファイル名:msvcp80.dll、msvcr80.dll など

Visual C++ 2008 再頒布可能パッケージ

  • MSVCバージョン:9.0
  • ファイル名:msvcp90.dll、msvcr90.dll など

Visual C++ 2010 再頒布可能パッケージ

  • MSVCバージョン:10.0
  • ファイル名:msvcp100.dll、msvcr100.dll など

Visual C++ 2012 再頒布可能パッケージ

  • MSVCバージョン:11.0
  • ファイル名:msvcp110.dll、msvcr110.dll など

Visual C++ 2013 再頒布可能パッケージ

  • MSVCバージョン:12.0
  • ファイル名:msvcp120.dll、msvcr120.dll など

Visual C++ 2015-2022 再頒布可能パッケージ

  • MSVCバージョン:14.0〜14.4x
  • ファイル名:msvcp140.dll、vcruntime140.dll など
  • 重要:2015、2017、2019、2022は同じランタイムを共有

なぜ複数のバージョンがインストールされているの?

パソコンを見ると、Visual C++ 2005から2022までたくさんのバージョンがインストールされていることがありますよね。

これは、各アプリケーションが作られたときのVisual C++のバージョンに対応する再頒布可能パッケージが必要だからです。

例えば:

  • 古いゲームA:Visual C++ 2008で作られた → 2008パッケージが必要
  • 新しいゲームB:Visual C++ 2019で作られた → 2015-2022パッケージが必要
  • ビジネスソフトC:Visual C++ 2013で作られた → 2013パッケージが必要

新しいバージョンがあるから古いバージョンは不要、ということではないんです。互換性がないので、それぞれ必要なバージョンをインストールしておく必要があります。

x86とx64の違い

再頒布可能パッケージには「x86」と「x64」の2種類があります。

  • x86:32ビットアプリケーション用
  • x64:64ビットアプリケーション用

64ビットのWindowsを使っていても、32ビットアプリケーションを実行する場合は、x86版のパッケージが必要です。そのため、多くのパソコンでは両方がインストールされています。

サポート期間について

Visual C++のサポート期間は、Visual Studioのライフサイクルと連動しています。

現在のサポート状況

サポート終了済み

  • Visual C++ 2015:2025年10月14日にサポート終了
  • Visual C++ 2013以前:すでにサポート終了

サポート継続中

  • Visual C++ 2017:Visual Studio 2017のライフサイクルに準じる
  • Visual C++ 2019:Visual Studio 2019のライフサイクルに準じる
  • Visual C++ 2022:Visual Studio 2022のライフサイクルに準じる

2015-2022の特別なケース

Visual C++ 2015、2017、2019、2022の再頒布可能パッケージは、バイナリ互換性があるため、最新版をインストールすれば古いバージョンもカバーできます。

つまり、Visual C++ 2022の再頒布可能パッケージをインストールすれば、2015、2017、2019で作られたアプリケーションも動作するということです。

よくある質問

再頒布可能パッケージを削除しても大丈夫?

基本的には削除しないでください。

削除すると、そのバージョンで作られたアプリケーションが動かなくなる可能性があります。エラーメッセージが出たり、起動すらできなくなったりすることがあるんです。

複数のバージョンがあって容量を取るんだけど?

各パッケージのサイズは比較的小さい(数MB〜数十MB程度)ので、ディスク容量への影響は限定的です。

削除することで得られる容量よりも、アプリケーションが動かなくなるリスクの方が大きいでしょう。

最新版だけ残して古いのを削除できない?

2015〜2022のバージョンについては、最新の2022パッケージがあれば古いものは不要です。

しかし、2013以前のバージョンは互換性がないため、削除すると対応するアプリケーションが動かなくなります。

どのアプリがどのバージョンを使っているか確認できる?

残念ながら、簡単に確認する方法はありません。

不要かどうか分からない場合は、削除せずにそのまま残しておくのが安全です。

エラーメッセージが出たらどうすればいい?

「MSVCP140.dllが見つかりません」や「VCRUNTIME140_1.dllが見つかりません」といったエラーが出た場合は、対応するVisual C++再頒布可能パッケージをインストールすることで解決できます。

  • MSVCP140.dll、VCRUNTIME140.dll:Visual C++ 2015-2022パッケージ
  • MSVCP120.dll:Visual C++ 2013パッケージ
  • MSVCP110.dll:Visual C++ 2012パッケージ

開発者向け:バージョンの確認方法

開発者の方向けに、使用しているVisual C++のバージョンを確認する方法をご紹介します。

Visual Studioで確認

  1. Visual Studioを起動
  2. メニューから「ヘルプ」→「Microsoft Visual Studioのバージョン情報」を選択
  3. バージョン情報が表示される

コンパイラマクロで確認

C++のソースコード内で、以下のマクロを使って確認できます。

// MSVCバージョン(例:1930)
_MSC_VER

// フルバージョン(例:193033519)
_MSC_FULL_VER

// ビルドバージョン
_MSC_BUILD

コマンドラインで確認

開発者コマンドプロンプトを開いて、以下を実行します。

cl.exe

バージョン情報が表示されます。

まとめ

Visual C++のバージョンについて、重要なポイントをおさらいしましょう。

  • Visual C++は1993年から30年以上の歴史を持つ開発環境
  • Visual Studio 2015以降(MSVC 14.x)はバイナリ互換性がある
  • 再頒布可能パッケージは各バージョンごとに必要
  • x86版とx64版の両方が必要な場合がある
  • 基本的には削除しない方が安全
  • Visual C++ 2015のサポートは2025年10月に終了済み
  • 最新版はVisual C++ 2022(Visual Studio 2022)

Visual C++は、多くのWindowsアプリケーションの基盤となっている重要なツールです。一般ユーザーとして再頒布可能パッケージを目にすることが多いと思いますが、それぞれに役割があることを理解していただければ幸いです。

削除したい衝動に駆られるかもしれませんが、容量もそれほど大きくないので、そのまま残しておくことをおすすめします。

コメント

タイトルとURLをコピーしました