.NET Framework およびアプリケーションの配置

ここでは、アプリケーションと共に .NET Framework を配置する方法についての概要を示します。 情報のほとんどは、開発者、OEM、およびエンタープライズ管理者を対象としています。 コンピュータに .NET Framework をインストールするユーザーは、「.NET Framework のインストール」をご覧ください。

主な配置リソース

.NET Framework の配置とサービスの詳細については、次に示す他の MSDN トピックへのリンク先を参照してください。

セットアップと配置

サービス

配置を簡素化する機能

.NET Framework には、アプリケーションを簡単に配置できるようにするための基本機能が数多く用意されています。

  • ゼロインパクト アプリケーション

    この機能は、アプリケーションを分離し、DLL の競合を解消します。 既定では、コンポーネントはほかのアプリケーションに影響を与えません。

  • プライベート コンポーネント (既定)

    既定では、コンポーネントはアプリケーション ディレクトリに配置され、コンテナー アプリケーションだけで参照できます。

  • 制御コードの共有

    コードを共有するには、既定の動作を実行する代わりに、共有するためのコードを明示的に作成する必要があります。

  • side-by-side でのバージョン管理。

    コンポーネントまたはアプリケーションの複数のバージョンを共存させ、使用するバージョンを選択できます。共通言語ランタイムによって、バージョン管理ポリシーが適用されます。

  • XCOPY による配置およびレプリケーション

    自己言及的な、単体で使用できるコンポーネントやアプリケーションは、レジストリ エントリや依存関係を設定せずに配置できます。

  • 実行時更新

    管理者は、ASP.NET などのホストを使用してプログラムの DLL を更新できます。リモート コンピューター上の DLL も更新できます。

  • Windows インストーラーとの統合

    アプリケーションを配置するときに、通知、発行、修復、およびオンデマンド インストールのすべてを使用できます。

  • エンタープライズ配置

    この機能を使用すると、Active Directory を使用する場合など、ソフトウェアの配布を簡単に行うことができます。

  • ダウンロードとキャッシュ

    インクリメンタル ダウンロードにより、ダウンロードのサイズを小さくすることができます。また、コンポーネントを分離して、そのアプリケーションだけで使用されるようにし、配置の影響を抑えることができます。

  • 完全な権利を与えられていないコード

    ID は、ユーザーではなく、コードに基づきます。証明書関連のダイアログ ボックスは表示されません。

.NET Framework アプリケーションのパッケージ化と配布

.NET Framework でのパッケージ化および配置についての情報の一部は、ドキュメントの別のトピックで説明します。 それらのトピックでは、レジストリ エントリを必要としないアセンブリと呼ばれる自己言及的な単位、名前の一意性を保証し、名前の悪用を防止する厳密な名前付きアセンブリ、DLL 競合に関連した問題の多くを解決するアセンブリのバージョン管理についての情報を提供します。 以下のセクションでは、.NET Framework アプリケーションのパッケージ化および配布について説明します。

パッケージ化

.NET Framework は、アプリケーション パッケージ化のために、次のオプションを提供します。

  • 単一のアセンブリまたはアセンブリのコレクションとしてパッケージ化する。

    このオプションでは、.dll ファイルまたは .exe ファイルは既に作成されているため、単に使用するだけです。

  • キャビネット (CAB) ファイルとしてパッケージ化する。

    このオプションでは、配布やダウンロードの時間を短縮するために、ファイルを .cab ファイルに圧縮します。

  • Windows インストーラー パッケージとして、またはその他のインストーラー フォーマットでパッケージ化する。

    このオプションでは、Windows インストーラーで使用する .msi ファイルを作成するか、または他のインストーラー用としてアプリケーションをパッケージ化します。

配布

.NET Framework には、アプリケーション配布のために、次のオプションが用意されています。

  • XCOPY または FTP を使用する。

    共通言語ランタイム アプリケーションは、自己言及的で、レジストリ エントリを必要としないため、XCOPY または FTP を使用して適切なディレクトリに単純にコピーできます。 その後、そのディレクトリでアプリケーションを実行できます。

  • コードのダウンロードを使用する。

    アプリケーションをインターネットや企業のイントラネットに配布する場合は、コードをコンピューターにダウンロードし、そこでアプリケーションを実行できます。

  • Windows Installer 2.0 などのインストーラー プログラムを使用する。

    Windows インストーラー 2.0 を使用して、グローバル アセンブリ キャッシュおよびプライベート ディレクトリへの .NET Framework アセンブリのインストール、修復、または削除を行うことができます。

インストール場所

ランタイムがアプリケーションのアセンブリを検索できるようなアセンブリの配置先については、「ランタイムがアセンブリを検索する方法」をご覧ください。

アプリケーションの配置方法には、セキュリティの考慮事項も関係します。 コードが存在する場所に基づいて、マネージド コードにセキュリティ アクセス許可が付与されます。 インターネットなど、信頼度の低い場所にアプリケーションやコンポーネントを配置すると、そのアプリケーションやコンポーネントが実行できることは制限されます。 配置とセキュリティ上の考慮事項については、「コード アクセス セキュリティの基礎」をご覧ください。

Title 説明
ランタイムがアセンブリを検索する方法 共通言語ランタイムが、バインド要求を満たすために、使用するアセンブリをどのように特定するかを説明します。
アセンブリの読み込みのベスト プラクティス InvalidCastExceptionMissingMethodException、およびその他のエラーの原因となることがある型 ID の問題を回避する方法について説明します。
.NET Framework 4.5 のインストール中のシステム再起動の削減 再起動をできる限り回避する再起動マネージャーと、.NET Framework をインストールするアプリケーションがそれをどのように利用できるかを説明しています。
配置ガイド (管理者向け) システム管理者が、Microsoft Endpoint Configuration Manager を使用して、ネットワーク全体に .NET Framework とその依存関係を配置する方法について説明します。
配置ガイド (開発者向け) 開発者による .NET Framework とアプリケーションのユーザーのコンピューターへのインストール方法について説明します。
アプリケーション、サービス、およびコンポーネントの配置 ClickOnce を使用したアプリケーションの発行手順や、Windows インストーラー テクノロジなど、Visual Studio の配置オプションについて説明します。
ClickOnce アプリケーションの発行 Windows フォーム アプリケーションをパッケージ化し、これを ClickOnce でネットワーク上のクライアント コンピューターに配置する方法を説明します。
リソースのパッケージ化と配置 .NET Framework でリソースのパッケージ化と配置に使用する、ハブ アンド スポーク モデルについて説明します。リソースの名前付け規則、フォールバック プロセス、およびパッケージ化の代替策についても説明します。
相互運用アプリケーションの配置 相互運用アプリケーションの出荷方法とインストール方法について説明します。通常、相互運用アプリケーションには、.NET Framework クライアント アセンブリ、個別の COM タイプ ライブラリを表す 1 つ以上の相互運用機能アセンブリ、および 1 つ以上の登録済み COM コンポーネントが含まれています。
方法: .NET Framework 4.5 インストーラーの進行状況を表示する 進行状況のビューを独自に表示する一方で、.NET Framework セットアップ プロセスをサイレントで起動および追跡する方法を説明します。

関連項目