再配布する DLL の決定
Visual Studio によって提供される DLL を使用するアプリケーションをビルドする場合、アプリケーションを実行するユーザーもそれらの DLL を自分のコンピューター上に持っている必要があります。多くのユーザーは Visual Studio をインストールしていないと考えられるので、それらの DLL をユーザーに提供する必要があります。Visual Studio では、これらの DLL を、アプリケーションのインストーラーに含めることができる再頒布可能ライブラリとして利用できるようにしています。
再頒布可能 DLL は、Visual Studio のインストールに含まれています。既定では、Program Files (x86)\Microsoft Visual Studio version\VC\Redist フォルダーにインストールされます。インストーラーに含めやすくするために、DLL はスタンドアロンの再頒布可能パッケージとして、Microsoft ダウンロード センターからも入手できます。これらのパッケージは実行可能ファイルであり、再頒布可能ファイルをユーザーのコンピューターにインストールします。再頒布可能パッケージのバージョンは、アプリケーションの作成に使用した Visual Studio ツールセットのバージョンと一致する必要があります。一致する再頒布可能パッケージを見つけるには、Microsoft ダウンロード センターで "Visual C++ 再頒布可能パッケージ" を検索します。
アプリケーションと共に再配布する必要がある DLL を判断するには、アプリケーションが依存する DLL の完全な一覧を収集します。その一覧を収集する方法の 1 つは、Visual C++ アプリケーションの依存関係の理解 で説明されているように、Dependency Walker (depends.exe) を実行することです。
依存関係の一覧がある場合は、Microsoft Visual Studio インストール ディレクトリにある Redist.txt ファイル内の一覧、または Visual Studio のマイクロソフト ソフトウェア ライセンス条項の「頒布可能コード」セクションで言及されている再頒布可能 DLL の "REDIST list" と比較してください。Visual Studio 2013 での一覧は、「Microsoft Visual Studio 2013 および Microsoft Visual Studio 2013 SDK 用頒布可能コード」からオンラインで利用できます。Visual Studio に含まれているすべてのファイルを再配布することはできません。再配布を許可されているのは、Redist.txt またはオンラインの "REDIST list" で指定されているファイルだけです。 アプリケーションのデバッグ バージョンと、各種の Visual C++ デバッグ DLL は、再配布できません。詳細については、「配置方法の選択」を参照してください。
次の表に、アプリケーションが依存する可能性がある一部の Visual C++ DLL を示します。
Visual C++ ライブラリ |
説明 |
対象 |
---|---|---|
msvcr120.dll |
ネイティブ コード用の C ランタイム ライブラリ (CRT) |
CRT ライブラリの機能を使用するアプリケーション |
msvcp120.dll |
ネイティブ コード用の標準 C++ ライブラリ |
標準 C++ ライブラリを使用するアプリケーション |
mfc120.dll |
MFC (Microsoft Foundation Class) ライブラリ |
MFC ライブラリ を使用するアプリケーション。 |
mfc120u.dll |
Unicode をサポートする MFC ライブラリ |
MFC ライブラリを使用し、Unicode のサポートを必要とするアプリケーション。 |
mfcmifc80.dll |
MFC マネージ インターフェイス ライブラリ |
MFC ライブラリ と共に Windows フォーム コントロール を使用するアプリケーション。 |
mfcm120.dll |
MFC マネージ ライブラリ |
MFC ライブラリ と共に Windows フォーム コントロール を使用するアプリケーション。 |
mfcm120u.dll |
Unicode をサポートする MFC マネージ ライブラリ |
MFC ライブラリ と共に Windows フォーム コントロール を使用し、Unicode のサポートを必要とするアプリケーション。 |
[!メモ]
Active Template Library を別の DLL として再配布する必要がなくなりました。その機能はヘッダーとスタティック ライブラリに移動されました。
アプリケーションと共にこのような DLL を再配布する方法の詳細については、「Visual C++ ファイルの再配布」を参照してください。例については、「配置例」を参照してください。
システム Dll はオペレーティング システムの一部であるため、通常は再配布する必要はありません。ただし、Microsoft オペレーティング システムの複数のバージョンでアプリケーションを実行する場合など、これが該当しない可能性もあります。この場合、使用許諾契約書を必ずお読みください。また、Windows Update や Service Pack を通じて、または Microsoft が提供する再頒布可能パッケージを使用して、システム DLL のアップグレードを試みてください。使用可能なパッケージについては、マイクロソフト サポートの Web サイト、または Microsoft ダウンロード センターで検索できます。