WPF アプリケーションをデプロイする
Windows Presentation Foundation (WPF) アプリケーションをビルドしたら、展開する必要があります。 Windows と .NET Framework には、いくつかのデプロイ テクノロジが含まれています。 WPF アプリケーションのデプロイに使用されるデプロイ テクノロジは、アプリケーションの種類によって異なります。 このトピックでは、各展開テクノロジの概要と、各 WPF アプリケーションの種類の展開要件と組み合わせて使用する方法について説明します。
デプロイ テクノロジ
Windows と .NET Framework には、次のようないくつかの展開テクノロジが含まれています。
XCopy の展開。
Windows インストーラーの展開。
ClickOnce 配置。
XCopy の展開
XCopy 展開とは、XCopy コマンド ライン プログラムを使用して、ある場所から別の場所にファイルをコピーすることを指します。 XCopy の展開は、次の状況で適しています。
アプリケーションは自己完結型です。 クライアントを更新して実行する必要はありません。
アプリケーション ファイルは、ビルドの場所 (ローカル ディスク、UNC ファイル共有など) から発行場所 (Web サイト、UNC ファイル共有など) に移動する必要があります。
アプリケーションでは、シェル統合 (スタート メニューのショートカット、デスクトップ アイコンなど) は必要ありません。
XCopy は単純な展開シナリオに適していますが、より複雑なデプロイ機能が必要な場合は制限されます。 特に、XCopy を使用すると、多くの場合、堅牢な方法でデプロイを管理するためのスクリプトを作成、実行、および保守するためのオーバーヘッドが発生します。 さらに、XCopy では、バージョン管理、アンインストール、ロールバックはサポートされていません。
Windows インストーラー
Windows インストーラーを使用すると、アプリケーションを、クライアントに簡単に配布して実行できる自己完結型の実行可能ファイルとしてパッケージ化できます。 さらに、Windows インストーラーは Windows と共にインストールされ、デスクトップ、スタート メニュー、および [プログラム] コントロール パネルとの統合が可能になります。
Windows インストーラーは、アプリケーションのインストールとアンインストールを簡略化しますが、インストールされているアプリケーションがバージョン管理の観点から -date up-to保持されるようにするための機能を提供しません。
Windows インストーラーの詳細については、「Windows インストーラーの展開」を参照してください。
ClickOnce 配置
ClickOnce を使用すると、Web 以外のアプリケーションに対して Web スタイルのアプリケーションを配置できます。 アプリケーションは、Web サーバーまたはファイル サーバーに発行され、デプロイされます。 ClickOnce は、Windows インストーラーによってインストールされたアプリケーションが実行するクライアント機能の全範囲をサポートしていませんが、以下を含むサブセットをサポートします。
[スタート] メニューと [プログラム] コントロール パネルとの統合。
バージョン管理、ロールバック、アンインストール。
オンライン インストール モード。展開場所から常にアプリケーションを起動します。
新しいバージョンがリリースされたときの自動更新。
ファイル拡張子の登録。
ClickOnce の詳細については、「ClickOnce のセキュリティと配置の」を参照してください。
WPF アプリケーションのデプロイ
WPF アプリケーションのデプロイ オプションは、アプリケーションの種類によって異なります。 展開の観点から見ると、WPF には 3 つの重要なアプリケーションの種類があります。
スタンドアロン アプリケーション。
マークアップのみの XAML アプリケーション。
XAML ブラウザー アプリケーション (XBAP)。
スタンドアロン アプリケーションの展開
スタンドアロン アプリケーションは、ClickOnce または Windows インストーラーを使用して配置されます。 いずれの場合も、スタンドアロン アプリケーションを実行するには完全な信頼が必要です。 完全信頼は、Windows インストーラーを使用して展開されるスタンドアロン アプリケーションに自動的に付与されます。 ClickOnce を使用して配置されるスタンドアロン アプリケーションには、完全な信頼は自動的には付与されません。 代わりに、ClickOnce は、スタンドアロン アプリケーションをインストールする前にユーザーが受け入れる必要があるセキュリティ警告ダイアログを表示します。 受け入れられた場合、スタンドアロン アプリケーションがインストールされ、完全な信頼が付与されます。 インストールされていない場合、スタンドアロン アプリケーションはインストールされません。
Markup-Only XAML アプリケーションのデプロイ
マークアップのみの XAML ページは、通常、HTML ページなどの Web サーバーに発行され、Internet Explorer を使用して表示できます。 マークアップのみの XAML ページは、インターネット ゾーンのアクセス許可セットによって定義された制限付きの部分信頼セキュリティ サンドボックス内で実行されます。 これにより、HTML ベースの Web アプリケーションと同等のセキュリティ サンドボックスが提供されます。
WPF アプリケーションのセキュリティの詳細については、「セキュリティ」を参照してください。
マークアップのみの XAML ページは、XCopy または Windows インストーラーを使用してローカル ファイル システムにインストールできます。 これらのページは、Internet Explorer または Windows エクスプローラーを使用して表示できます。
XAML の詳細については、「WPFでの XAML の
XAML ブラウザー アプリケーションのデプロイ
警告
XBAP では、Internet Explorer や古いバージョンの Firefox など、従来のブラウザーが動作する必要があります。 これらの古いブラウザーは、通常、Windows 10 および Windows 11 ではサポートされていません。 最新のブラウザーでは、セキュリティ リスクのために XBAP アプリに必要なテクノロジがサポートされなくなりました。 XBAP を有効にするプラグインはサポートされなくなりました。 詳細については、「WPF ブラウザーでホストされるアプリケーション (XBAP)についてよく寄せられる質問を参照してください。
XBAP は、次の 3 つのファイルをデプロイする必要があるコンパイル済みアプリケーションです。
ApplicationName.exe: 実行可能アセンブリ アプリケーション ファイル。
ApplicationName.xbap: 配置マニフェスト。
ApplicationName.exe.manifest: アプリケーション マニフェスト。
手記
配置マニフェストとアプリケーション マニフェストの詳細については、「WPF アプリケーションのビルド」を参照してください。
これらのファイルは、XBAP のビルド時に生成されます。 詳細については、「方法: 新しい WPF ブラウザー アプリケーション プロジェクトを作成する」を参照してください。 マークアップのみの XAML ページと同様に、XBAP は通常、Web サーバーに発行され、Internet Explorer を使用して表示されます。
XBAP は、任意の展開手法を使用してクライアントに展開できます。 ただし、ClickOnce は次の機能を提供するため、推奨されます。
新しいバージョンが発行されたときの自動更新。
完全な信頼で実行する XBAP の特権の昇格。
既定では、ClickOnce は .deploy 拡張子を持つアプリケーション ファイルを発行します。 これは問題になる可能性がありますが、無効にすることができます。 詳細については、「ClickOnce 配置でのサーバーとクライアントの構成に関する問題
XAML ブラウザー アプリケーション (XBAP) の展開の詳細については、「WPF XAML ブラウザー アプリケーションの概要」を参照してください。
.NET Framework のインストール
WPF アプリケーションを実行するには、Microsoft .NET Framework をクライアントにインストールする必要があります。 Internet Explorer は、WPF ブラウザーでホストされているアプリケーションを表示するときに、クライアントが .NET Framework と共にインストールされているかどうかを自動的に検出します。 .NET Framework がインストールされていない場合、Internet Explorer はユーザーにインストールを求めます。
.NET Framework がインストールされているかどうかを検出するために、Internet Explorer には、.xaml、.xps、.xbap、.application という拡張子のコンテンツ ファイルのフォールバック多目的インターネット メール拡張機能 (MIME) ハンドラーとして登録されたブートストラップ アプリケーションが含まれています。 これらのファイルの種類に移動し、.NET Framework がクライアントにインストールされていない場合、ブートストラップ アプリケーションはインストールのアクセス許可を要求します。 アクセス許可が指定されていない場合、.NET Framework もアプリケーションもインストールされません。
アクセス許可が付与されている場合、Internet Explorer は Microsoft Background Intelligent Transfer Service (BITS) を使用して .NET Framework をダウンロードしてインストールします。 .NET Framework のインストールが正常に完了すると、最初に要求されたファイルが新しいブラウザー ウィンドウで開かれます。
詳細については、「.NET Framework とアプリケーションの配置」を参照してください。
関連項目
- WPF アプリケーション のビルド
- セキュリティ
.NET Desktop feedback