MFC ライブラリの再配布

更新 : 2007 年 11 月

アプリケーションを MFC ライブラリに動的にリンクする場合は、少なくとも、MFC と CRT アセンブリの対応するマニフェスト ファイルと共に Mfc90.dll と Msvcr90.dll を配布する必要があります。Visual C++ アセンブリおよびその一部である DLL の詳細については、「Visual C++ ライブラリの共有 side-by-side アセンブリとしての配布」を参照してください。MFC のすべての DLL は、共有バージョンの C ランタイム (CRT: C Run-Time) ライブラリを使用します。したがって、Msvcr90.dll が必要です。

MFC DLL と静的にリンクした場合 (つまり、[プロパティ ページ] ダイアログ ボックスの [全般] タブの [スタティック ライブラリで MFC を使用する] を指定した場合)、MFC アプリケーションと一緒に Mfc90.dll を再配布する必要はありません。これはアプリケーションのテストや内部での配置を行う場合でも該当し、MFC を再配布しないことをお勧めします。Visual C++ ライブラリの配置に関する推奨の解決方法については、「配置方法の選択」を参照してください。

アプリケーションで WebBrowser コントロールを実装した MFC クラス (CHtmlView クラスCHtmlEditView クラス など) を使用する場合は、ターゲット コンピュータに Microsoft Internet Explorer 4.0 以降のバージョンのインストールが必要です。Internet Explorer の最新バージョンをインストールすると、ターゲット コンピュータに最新のコモン コントロール ファイルを確保できます。Internet Explorer コンポーネントの最小インストールの方法については、Knowledge Base の文書「HOWTO: Create a Single EXE Install of Internet Explorer (Q185375)」を参照してください。

アプリケーションで CRecordset クラスCRecordView クラスなどの MFC データベース クラスを使用する場合は、必要な ODBC および ODBC ドライバを再配布する必要があります。詳細については、「データベース サポート ファイルの再頒布」を参照してください。

MFC アプリケーションが Windows フォーム コントロールを使用している場合は、アプリケーションと共に mfcmifc90.dll を再配布する必要があります。この DLL は厳密な名前で署名された .NET アセンブリです。アプリケーションと共にアプリケーションのローカル フォルダに再配布することもできますし、グローバル アセンブリ キャッシュ ツール (Gacutil.exe) を使用してグローバル アセンブリ キャッシュ (GAC: Global Assembly Cache) に配置して再配布することもできます。

MFC DLL を再配布する場合は、デバッグ バージョンではなく、必ずリテール バージョンを再配布してください。DLL のデバッグ バージョンは再配布できません。MFC DLL のデバッグ バージョンは、ファイル名の末尾に "d" が付きます。たとえば、Mfc90d.dll はデバッグ バージョンです。

MFC ソースに任意の変更を加え、MFC DLL を再度ビルドする場合は、変更後の MFC DLL が Visual Studio の MFC DLL と競合しないように名前を変更する必要があります。MFC DLL のリビルドおよび名前の変更は、できる限り行わないでください。詳細については、MFC のテクニカル ノート 33 を参照してください。

MFC を再配布するには、Visual Studio と共にインストールされるマージ モジュールを使用するか、MFC をアプリケーションのローカル フォルダのサブフォルダ内にプライベート アセンブリとして配置します。MFC の再配布の詳細については、「Visual C++ ファイルの再配布」を参照してください。

テクニカル ノート 56: ローカライズされた MFC コンポーネントのインストール

MFC90 ローカリゼーション DLL をインストールしてアプリケーションの MFC リソースの使用をローカライズする場合は、再頒布可能 MSM ファイルを使用する必要があります。たとえば、アプリケーションを x86 コンピュータにローカライズする場合は、Microsoft_VC90_MFCLOC_x86.msm と policy_9_0_Microsoft_VC90_MFCLOC_x86.msm の各ファイルを x86 コンピュータのインストール パッケージにマージする必要があります。

標準のカタログ、マニフェスト、およびポリシーのファイルに加えて、再頒布可能 MSM ファイルには、どのローカライズにも使用される 9 つの DLL のセットが含まれます。インストール プロセスにより、その DLL はターゲット マシンの winsxs フォルダにコピーされます。

MFC アプリケーションのローカライズの詳細については、https://support.microsoft.com/support から、MFC のテクニカル ノート 57 およびサポート技術情報の文書「[HOWTO] MFC LOC DLL を使用する方法 (Q208983)」を検索してください。

MFC のローカライズされた DLL を再配布するには、MFC をアプリケーションのローカル フォルダにプライベート アセンブリとして配置します。Visual C++ ライブラリのプライベート アセンブリとしての配置の詳細については、「Visual C++ ファイルの再配布」を参照してください。

参照

概念

Visual C++ ファイルの再配布