ClickOnce
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>プログラムの配付技術]]
* 目次 [#j0ff67ab]
#contents
*概要 [#v81b6640]
「ClickOnce」(クリック ワンス)は、.NET Framework 2.0に...
「ノータッチ デプロイメント」は、セキュリティ、配布(キャ...
**ターゲット [#gd1c8de0]
「ClickOnce」は、
-「XCOPY」・「インストーラ」での配布や、自作の自動デプロ...
-⇒「ノータッチ デプロイメント」⇒「ClickOnce」という歴史を...
以下のようなアプリケーションを配布・自動更新することにタ...
-インターネット環境から不特定多数に向けて配信可能。
-自動更新をサポートするため、頻繁な仕様変更・更新がある場...
-中・小規模である(または画面側のみの配布)。
--ダウンロード&キャッシュサイズの関係上、大規模なアプリ...
--ただし配布・更新時のダウンロード時間が問題となる場合は...
また、.NET Framework 3.0からサポートされた[[WPF]]アプリケ...
**メリット [#d32bdb64]
-Webアプリケーション同様に、リッチ クライアント アプリケ...
-開発側がアプリケーションに必要な「アクセス許可」を設定し...
この点「ノータッチ デプロイメント」の技術と比べて融通が利...
*要件 [#hd3cb011]
配布・更新基盤として、[[色々な選択肢>プログラムの配付技術...
**クライアント要件 [#i1f051b7]
ClickOnceアプリケーションを実行するには、次のクライアント...
***環境 [#zab9e3d7]
|項番|種類|要件|h
|1|ランタイム|.NET Framework 2.0以上|
|2|OS|.NET Framework 2.0以上が動作するOS|
|3|wwwブラウザ|Microsoft Internet Explorer(以下、IEと略...
***権限 [#ca961be1]
「ClickOnce」では、インターネット環境から不特定多数に向け...
-このため、インストール先(正確にはキャッシュ領域 )は、”...
-リソースやデータの保存先の[[ストレージ>#n07c7128]]もこの...
-「分離ストレージ」 を活用すれば、「ClickOnceアプリケーシ...
**サーバ要件 [#m23050e7]
サーバ要件(wwwサーバ、ファイル サーバなど)には、特別の...
*動作の概要 [#y5b39760]
#ref(ClickOnce_1.png,left,nowrap,ClickOnce動作の概要)
**発行~利用 [#n1fb0936]
「ClickOnce」の機能を利用するには、
-Visual Studioで作成したプログラムを「発行」(後述)して...
-配置した「配布用フォルダ」内の『インストールWebページ』...
-この『インストールWebページ』のリンク先には、「ClickOnce...
-このリンクを押下してリンク先のレスポンスを受ける。
-ランタイムの『ClickOnceローダ(dfsvc.exe)』は、「ClickO...
実行プログラムをローカル ディスクの『ClickOnceキャッシュ...
-プログラムを起動する。
--『完全信頼』の場合は、単独で(通常のEXEと変わりなく)動...
--『部分信頼』の場合は、『ClickOnceホスト(AppLaunch.exe...
***詳細 [#u8ffc70c]
仕組み、シーケンスの詳細は以下が参考になる。
連載 ClickOnceの真実:第2回 ClickOnceの仕組みを理解しよう
-(1-2) - @IT~
http://www.atmarkit.co.jp/ait/articles/0603/11/news018.html
--ClickOnceアプリが配布される仕組み
---ClickOnceアプリのフォルダ/ファイル構成
---ClickOnceデプロイメントの流れ(ClickOnceローダー)
-(2-2) - @IT
http://www.atmarkit.co.jp/ait/articles/0603/11/news018_2....
--ClickOnceアプリが更新される仕組み
---ClickOnceアップデートの流れ(ClickOnceローダー)
--ClickOnceで使われるマニフェスト・ファイル
---配置マニフェスト(.applicationファイル)
---アプリケーション・マニフェスト(.manifestファイル)
***既定のアクセス許可 [#yda8b3aa]
「セキュリティ ゾーン」に基づいた限定された「アクセス許可...
|項番|配置場所|セキュリティ ゾーン|h
|1|Webからの実行|インターネット ゾーン|
|2|Webからのインストール|インターネット ゾーン|
|3|ネットワーク ファイル共有からのインストール|イントラ...
|4|CD-ROMからのインストール|完全信頼|
***セキュリティの警告ダイアログ [#i7ddaba8]
-「ClickOnceアプリケーション」は、必要な、設定された「ア...
-要求された「アクセス許可」が「セキュリティ ゾーン」の「...
*配置オプション [#e4fcc75d]
「配置オプション」には、
-『[[インストール モード>#m40bf456]]』
-『[[配置場所>#r2eb39e5]]』
の2つのオプションがある。
どのオプションを選択しても配布の基本的な動作は同じ。~
これを切り替えることで、配布の動作が大きく変化するわけで...
**『インストール モード』 [#m40bf456]
「ClickOnceアプリケーション」を配布する際の、「ローカル ...
-「許されているか」
--オンライン モード
---オフライン実行が許されていない。
---インストール(キャッシュ領域に保存)されない。
---オンラインからの起動しかできない。
-「許されていないか」
--オンライン/オフライン モード
---オフライン実行が許されている。
---インストール(キャッシュ領域に保存)される。
---オフラインでも実行可能。
を設定できる。
**『配置場所』 [#r2eb39e5]
「配布用フォルダ」を、次の3種類から選択することができる。
-インターネット/イントラネットなどのWeb上(HTTP URL)
-ネットワーク上でのファイル共有(UNCパス)
-CD-ROM/DVD-ROMなどのローカル デバイス上(ディレクトリ...
「発行」後に「配布フォルダ」を移動する場合(例えば、開発...
プロジェクトのプロパティの[発行]タブにある、[発行場所]と[...
これにより、[インストールのURL]テキスト ボックスにURLを入...
*セキュリティ設定 [#c87f66a4]
「ClickOnceアプリケーション」は、
-『[[完全信頼>#o09c8186]]』
-『[[部分信頼>#i23be72f]]』
のどちらかのセキュリティ設定で動作する。
**『完全信頼』 [#o09c8186]
「セキュリティ制限」を受けずに、単独で(通常のEXEと変わり...
**『部分信頼』 [#i23be72f]
-.NET Frameworkが提供する『ClickOnce ホスト(AppLaunch.ex...
-これにより、アセンブリの出所に対応する「セキュリティ制限...
-かつて『部分信頼』には、[[コード・アクセス・セキュリティ...
**UAC [#af95c055]
管理者権限を持つClickOnceアプリケーションを実行することは...
-MSBuild エラー MSB3190~
https://msdn.microsoft.com/ja-jp/library/bb383802.aspx
>ClickOnce では、requireAdministrator または highestAvail...
--ClickOnce 配置でのセキュリティ、バージョン管理、および...
https://msdn.microsoft.com/ja-jp/library/ms228996.aspx
--常に管理者としてアプリケーションを実行させるには?[C#...
http://www.atmarkit.co.jp/fdotnet/dotnettips/958uacmanife...
ここにはハックがあり、管理者権限を持つ新しいプロセスを開...
-c# - Run as administrator: requireAdministrator & ClickO...
http://stackoverflow.com/questions/5713825/run-as-adminis...
*VSでの設定 [#ce5b0791]
**セキュリティ・タブ [#q280aeef]
セキュリティ・タブではアクセス許可を構成する。
-プロジェクトのプロパティの[セキュリティ]ページに、[Click...
-「ClickOnceアプリケーション」として発行する場合は、これ...
「アクセス許可」を与える場合、以下を設定する。
-『[[完全信頼>#o09c8186]]』
-『[[部分信頼>#i23be72f]]』
--[[コードグループと証拠>コード・アクセス・セキュリティ#g...
--各、アクセス許可(パーミッション)を選択すると、設定し...
---[アクセス許可の検出]ボタンを押せば、選択した「セキュリ...
---[アクセス許可の検出]は静的な検出であり、実行時に動的に...
**署名タブ [#m1b10b31]
署名タブでは「コード サイニング証明書」による『署名』を行...
-デフォルトは何も設定されていないが、『発行ウィザード』を...
-開発時の「コード サイニング証明書」は自己署名なので、
--certmgr.exeコマンドライン ツールを使用して「信頼された...
--本番では、信頼されたルート証明機関に「コード サイニング...
***参考 [#o965d804]
-「[[コード サイニング証明書>証明書#oa4d84a6]]」
-ClickOnce 信頼された発行者の設定~
https://msdn.microsoft.com/ja-jp/library/ms996418.aspx
**発行タブ [#h7fc5a66]
発行タブでは発行を行う。
『発行ウィザード』より詳細な設定が必要な場合、~
プロジェクトのプロパティを開き、[発行]タブに移動する。
ここでは、以下の設定が可能である。
***[[配置場所>#r2eb39e5]] [#tb0578ec]
「配布用フォルダ」の「発行場所」
***『[[インストール モード>#m40bf456]]』 [#u05f8f8b]
***発行するバージョン番号 [#f7a69081]
***インストーラに含める必須コンポーネント [#n58c8769]
必須コンポーネントのインストールにはインストール権限が必...
-連載 ClickOnceの真実:第5回 実行環境を確実に整える必須コ...
http://www.atmarkit.co.jp/ait/articles/0609/09/news019.html
-.MSIセットアップで必須コンポーネントを利用するには?[VS...
http://www.atmarkit.co.jp/fdotnet/dotnettips/496msibootst...
-方法 : ClickOnce アプリケーションと共に必須コンポーネン...
https://msdn.microsoft.com/ja-jp/library/8st7th1x.aspx
-方法 : ClickOnce アプリケーションと共に必須コンポーネン...
https://msdn.microsoft.com/ja-jp/library/hh873130.aspx
*ストレージ [#n07c7128]
**分離ストレージ [#jd510991]
「分離ストレージ」とは、主に『部分信頼』の「セキュリティ...
-分離ストレージを活用するには?[C#、VB] - @IT~
http://www.atmarkit.co.jp/fdotnet/dotnettips/578isolateds...
-分離ストレージでディレクトリを使うには?[C#、VB] - @...
http://www.atmarkit.co.jp/fdotnet/dotnettips/584isolateds...
**インストール先 [#db964986]
-正確にはキャッシュ領域は、”%USERPROFILE%\Local Settings\...
-プロジェクト出力に「埋め込まれたリソース」として追加され...
独自定義ファイル、または、業務データの保存先はココに格納...
**独自定義ファイルの配布方法 [#b9e05bac]
ClickOnceでは定義ファイルの配布・自動更新が問題となること...
以下、問題点の一例である。
-app.config の書き換え後は、「再発行」して自動更新を行う...
-app.config、[[user.config>http://www.atmarkit.co.jp/fdot...
保存先のディレクトリ(「%USERPROFILE%\Local Settings\Apps...
ランダムな乱数値が含まれるため、ユーザ(もしくは設定プロ...
--このため、設定変更に伴う*.configの「再発行」が必要にな...
--また、*.configの設定値は、「再発行」の後、ディレクトリ...
このような問題があるため、*.configファイルではなく、独自...
***埋め込まれたリソース [#e9c62785]
-メリット
--配布・自動更新対象となる。
--配置位置(フォルダ)への権限を意識しなくて良い。
-デメリット~
テキストエディタを使用した編集が不可能(設定変更時は、再...
-その他、注意点~
読込用のAPIが特殊(Assembly.GetManifestResourceStreamを使...
***ファイルとして配布 [#o8bd8321]
-メリット~
テキストエディタを使用した編集が可能。
-デメリット
--配布・自動更新対象とならない(ユーザによる配布・更新)。
--配置位置(フォルダ)への読込権限が必要 。
---環境変数「ALLUSERSPROFILE」以下のディレクトリを使用可...
---複数ユーザ間で設定を共有するには、環境変数「ALLUSERSPR...
-その他、注意点~
[[XBAP]]以外でカレント ディレクトリを配置位置として使用し...
更新時、カレント ディレクトリが変更され、設定の変更を保持...
***プログラムにより初期設定を行う。 [#ob7003c4]
-メリット
--配布・自動更新対象となる(埋め込まれたリソースをテンプ...
--配置位置(フォルダ)への書込権限が必要 。
---環境変数「USERSPROFILE」or「APPDATA」以下のディレクト...
---環境変数に対応した絶対パス指定が必要となる。
--テキストエディタを使用した編集が可能。
-デメリット~
少々、作りこみが必要となる(初期設定、更新時のデータ引継...
-その他、注意点
--読込用のAPIが特殊(Assembly.GetManifestResourceStreamを...
--[[XBAP]]以外でカレント ディレクトリを配置位置として使用...
更新時、カレント ディレクトリが変更され、設定の変更を保持...
*データ アクセス [#e22605c7]
可能(Silverlightやストアアプリでは不可能だが)
*プリンタ出力 [#xf26e90b]
可能
**ClickOnceによる帳票直接印刷 [#kf6da640]
https://social.msdn.microsoft.com/Forums/ja-JP/73084ab7-3...
>ASP.NETでレポートを生成して、結果をClickOnceで直接印刷す...
**プリンタ・ドライバのデプロイ [#o55b2ec7]
-必須コンポーネント(*.msi)に含めてインストールすること...
-ただし、必須コンポーネントのインストールにはインストール...
*追加可能なカスタム動作 [#n7b2bd36]
「ClickOnceアプリケーション」に追加することができるカスタ...
-System.Deployment.Applicationクラスライブラリ~
https://msdn.microsoft.com/ja-jp/library/system.deploymen...
**バージョン番号の表示 [#oec2186b]
「ClickOnceアプリケーション」のバージョン番号を表示する。
**自動更新 [#x26414e4]
更新されたバージョンがないかをサーバに問合せ、更新を行う。
**オンデマンドでアセンブリをダウンロード [#d77a2c2d]
-カスタム動作の作成~
https://msdn.microsoft.com/ja-jp/library/d9k65z2d(v=vs.90...
--チュートリアル : ClickOnce 配置 API を使用して必要に応...
https://msdn.microsoft.com/ja-jp/library/ms228997(v=vs.90...
**.etc [#i2070742]
*更新 [#rdc120a4]
**ロールバック [#dcee78d5]
「ClickOnceアプリケーション」は、「1つ前のバージョンにロ...
コントロール パネルを開き、そこから[プログラムの追加と削...
表示された[プログラムの追加と削除]ダイアログで[プログラム...
ロールバックしたい「ClickOnceアプリケーション」の[変更と...
すると「アンインストール」もしくは「ロールバック」するた...
-[ClickOnceの保守]ダイアログが表示される
--[アプリケーションを以前の状態に復元します。]オプション ...
--[このコンピューターからアプリケーションを削除します。]...
ここで[アプリケーションを以前の状態に復元します。]を選択...
この場合、「ClickOnceアプリケーション」をアンインストール...
**更新方法の選択 [#c7506804]
-ClickOnce の更新方法の選択~
https://msdn.microsoft.com/ja-jp/library/s22azw1e.aspx
***更新をスキップされないようにするには? [#ia2979f5]
更新するか?スキップするか?の選択は、オフライン実行を選...
一度スキップすると7日間ほど更新のダイアログが表示されな...
サーバの更新後は最新のプログラムを使用する必要がある場合...
+publish.htmから起動する。そうすれば自動更新される。
+オフライン実行を不可能にする。ショートカットからの起動が...
+ClickOnce Deployment APIを使用して、アプリケーション自身...
+更新の必須化
>「アプリケーションに最低限必要なバージョン」を指定してお...
それよりも古いバージョンのアプリケーションを実行不可とす...
*ブラウザのサポート状況 [#db0faaa0]
IE以外のブラウザのサポート状況について。
**Firefox [#ibd3c2ce]
-2015/03/02:Firefoxに以下のPlugin追加し.NET4.5で動作確認...
-2016/01/25:「このアドオンは管理者によって無効化されてい...
-Microsoft .NET Framework Assistant Add-ons for Firefox~
https://addons.mozilla.org/ja/firefox/addon/microsoft-net...
--Microsoft .NET Framework Assistant 1.3.1
--作者: Microsoft Corporation
--Adds ClickOnce support and the ability to report instal...
This extension requires version 3.5 SP1 (or greater) of t...
**Chrome [#b913c608]
Chromeには、Microsoft純正のPluginが無い模様。~
(純正でないPluginは幾つか確認できるが何が良いのか解らな...
下記「ClickOnce for Chrome」を試たが動作しなかった。
-ClickOnce for Chrome~
http://www.clickoncechrome.com/
**Microsoft Edge [#t5dac9bf]
ClickOnceやNo-Touch Deploymentが動作しない。
**参考 [#eb356165]
-ClickOnce - Wikipedia, the free encyclopedia~
http://en.wikipedia.org/wiki/ClickOnce#Browser_support
-Browser support for ClickOnce deployement~
https://social.msdn.microsoft.com/forums/windows/en-us/49...
-.net - ClickOnce for Chrome now that NPAPI is not suppor...
http://stackoverflow.com/questions/26123714/clickonce-for...
-Google、いよいよ新年からChrome向けNPAPIプラグインを全面...
http://jp.techcrunch.com/2014/11/25/20141124chrome-will-s...
-Windows 10 に搭載される 新しいブラウザ Microsoft Edgeに...
http://tunemicky.blogspot.jp/2015/07/windows-10-microsoft...
*参考 [#e56d59d4]
-[[プログラムの配付技術]]
-Insider.NET ClickOnceの真実 - @IT~
http://www.atmarkit.co.jp/ait/subtop/features/dotnet/clic...
-ClickOnce について 松崎 剛 Blog~
https://blogs.msdn.microsoft.com/tsmatsuz/2006/08/15/clic...
-ClickOnce と Windows インストーラの使い分け~
http://msdn.microsoft.com/ja-jp/library/ms973805.aspx
-ClickOnce採用時のセキュリティ観点での注意事項、および制...
fullvirtue.com ITアーキテクトのブログ
http://fullvirtue.com/clickonce%E6%8E%A1%E7%94%A8%E6%99%8...
--ClickOnce アプリケーションのセキュリティ~
https://msdn.microsoft.com/ja-jp/library/76e4d2xw(loband)...
--ClickOnce 配置でのサーバーおよびクライアント構成の問題~
https://msdn.microsoft.com/ja-jp/library/ms228998.aspx
--ClickOnce 配置でのセキュリティ、バージョン管理、および...
https://msdn.microsoft.com/ja-jp/library/ms228996.aspx
--方法 : 配置の更新用に別の場所を指定する~
https://msdn.microsoft.com/ja-jp/library/16z3sw0x.aspx
--ClickOnce 配置の固有のエラーのトラブルシューティング~
https://msdn.microsoft.com/ja-jp/library/ms229001.aspx
**色々 [#md77b51b]
調べれば色々できる。
-ClickOnce の配置を管理する~
https://msdn.microsoft.com/ja-jp/library/aa480721.aspx
--はじめに
--ClickOnce アプリケーションを発行して配置する
--ClickOnce アプリケーションをインストールして起動する
--ClickOnce アプリケーションを追跡する
--Windows 認証を使用する
--カスタム アプリケーション認証を使用する
--クエリ文字列パラメータを使用する
--カスタム クライアント プロキシを使用してアプリケーショ...
--ユーザー認証のまとめ
--ClickOnce アプリケーションへのアクセスを制限する
--Windows 認証を使用する
--カスタム認証
--クエリ文字列パラメータを使用する
--カスタム クライアント プロキシを使用する
--ユーザー承認のまとめ
--起動エラーに対処する
--まとめ
--その他のリソース
--付録
--発行ディレクトリ構造
--配置プロバイダを設定および変更する
-ClickOnce のセキュリティと配置~
https://msdn.microsoft.com/ja-jp/library/t71a733d.aspx
--ClickOnce 配置ストラテジの選択
--ClickOnce キャッシュの概要
--ClickOnce とアプリケーション設定
--Windows Vista の ClickOnce 配置
--ClickOnce アプリケーションのローカライズ
--ClickOnce アプリケーションのセキュリティ
--ClickOnce アプリケーションの発行
--ClickOnce の更新方法の選択
--ClickOnce 配置のトラブルシューティング
--ClickOnce に関するリファレンス
--ClickOnce 配置のサンプルとチュートリアル
----
Tags: [[:.NET開発]]
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>プログラムの配付技術]]
* 目次 [#j0ff67ab]
#contents
*概要 [#v81b6640]
「ClickOnce」(クリック ワンス)は、.NET Framework 2.0に...
「ノータッチ デプロイメント」は、セキュリティ、配布(キャ...
**ターゲット [#gd1c8de0]
「ClickOnce」は、
-「XCOPY」・「インストーラ」での配布や、自作の自動デプロ...
-⇒「ノータッチ デプロイメント」⇒「ClickOnce」という歴史を...
以下のようなアプリケーションを配布・自動更新することにタ...
-インターネット環境から不特定多数に向けて配信可能。
-自動更新をサポートするため、頻繁な仕様変更・更新がある場...
-中・小規模である(または画面側のみの配布)。
--ダウンロード&キャッシュサイズの関係上、大規模なアプリ...
--ただし配布・更新時のダウンロード時間が問題となる場合は...
また、.NET Framework 3.0からサポートされた[[WPF]]アプリケ...
**メリット [#d32bdb64]
-Webアプリケーション同様に、リッチ クライアント アプリケ...
-開発側がアプリケーションに必要な「アクセス許可」を設定し...
この点「ノータッチ デプロイメント」の技術と比べて融通が利...
*要件 [#hd3cb011]
配布・更新基盤として、[[色々な選択肢>プログラムの配付技術...
**クライアント要件 [#i1f051b7]
ClickOnceアプリケーションを実行するには、次のクライアント...
***環境 [#zab9e3d7]
|項番|種類|要件|h
|1|ランタイム|.NET Framework 2.0以上|
|2|OS|.NET Framework 2.0以上が動作するOS|
|3|wwwブラウザ|Microsoft Internet Explorer(以下、IEと略...
***権限 [#ca961be1]
「ClickOnce」では、インターネット環境から不特定多数に向け...
-このため、インストール先(正確にはキャッシュ領域 )は、”...
-リソースやデータの保存先の[[ストレージ>#n07c7128]]もこの...
-「分離ストレージ」 を活用すれば、「ClickOnceアプリケーシ...
**サーバ要件 [#m23050e7]
サーバ要件(wwwサーバ、ファイル サーバなど)には、特別の...
*動作の概要 [#y5b39760]
#ref(ClickOnce_1.png,left,nowrap,ClickOnce動作の概要)
**発行~利用 [#n1fb0936]
「ClickOnce」の機能を利用するには、
-Visual Studioで作成したプログラムを「発行」(後述)して...
-配置した「配布用フォルダ」内の『インストールWebページ』...
-この『インストールWebページ』のリンク先には、「ClickOnce...
-このリンクを押下してリンク先のレスポンスを受ける。
-ランタイムの『ClickOnceローダ(dfsvc.exe)』は、「ClickO...
実行プログラムをローカル ディスクの『ClickOnceキャッシュ...
-プログラムを起動する。
--『完全信頼』の場合は、単独で(通常のEXEと変わりなく)動...
--『部分信頼』の場合は、『ClickOnceホスト(AppLaunch.exe...
***詳細 [#u8ffc70c]
仕組み、シーケンスの詳細は以下が参考になる。
連載 ClickOnceの真実:第2回 ClickOnceの仕組みを理解しよう
-(1-2) - @IT~
http://www.atmarkit.co.jp/ait/articles/0603/11/news018.html
--ClickOnceアプリが配布される仕組み
---ClickOnceアプリのフォルダ/ファイル構成
---ClickOnceデプロイメントの流れ(ClickOnceローダー)
-(2-2) - @IT
http://www.atmarkit.co.jp/ait/articles/0603/11/news018_2....
--ClickOnceアプリが更新される仕組み
---ClickOnceアップデートの流れ(ClickOnceローダー)
--ClickOnceで使われるマニフェスト・ファイル
---配置マニフェスト(.applicationファイル)
---アプリケーション・マニフェスト(.manifestファイル)
***既定のアクセス許可 [#yda8b3aa]
「セキュリティ ゾーン」に基づいた限定された「アクセス許可...
|項番|配置場所|セキュリティ ゾーン|h
|1|Webからの実行|インターネット ゾーン|
|2|Webからのインストール|インターネット ゾーン|
|3|ネットワーク ファイル共有からのインストール|イントラ...
|4|CD-ROMからのインストール|完全信頼|
***セキュリティの警告ダイアログ [#i7ddaba8]
-「ClickOnceアプリケーション」は、必要な、設定された「ア...
-要求された「アクセス許可」が「セキュリティ ゾーン」の「...
*配置オプション [#e4fcc75d]
「配置オプション」には、
-『[[インストール モード>#m40bf456]]』
-『[[配置場所>#r2eb39e5]]』
の2つのオプションがある。
どのオプションを選択しても配布の基本的な動作は同じ。~
これを切り替えることで、配布の動作が大きく変化するわけで...
**『インストール モード』 [#m40bf456]
「ClickOnceアプリケーション」を配布する際の、「ローカル ...
-「許されているか」
--オンライン モード
---オフライン実行が許されていない。
---インストール(キャッシュ領域に保存)されない。
---オンラインからの起動しかできない。
-「許されていないか」
--オンライン/オフライン モード
---オフライン実行が許されている。
---インストール(キャッシュ領域に保存)される。
---オフラインでも実行可能。
を設定できる。
**『配置場所』 [#r2eb39e5]
「配布用フォルダ」を、次の3種類から選択することができる。
-インターネット/イントラネットなどのWeb上(HTTP URL)
-ネットワーク上でのファイル共有(UNCパス)
-CD-ROM/DVD-ROMなどのローカル デバイス上(ディレクトリ...
「発行」後に「配布フォルダ」を移動する場合(例えば、開発...
プロジェクトのプロパティの[発行]タブにある、[発行場所]と[...
これにより、[インストールのURL]テキスト ボックスにURLを入...
*セキュリティ設定 [#c87f66a4]
「ClickOnceアプリケーション」は、
-『[[完全信頼>#o09c8186]]』
-『[[部分信頼>#i23be72f]]』
のどちらかのセキュリティ設定で動作する。
**『完全信頼』 [#o09c8186]
「セキュリティ制限」を受けずに、単独で(通常のEXEと変わり...
**『部分信頼』 [#i23be72f]
-.NET Frameworkが提供する『ClickOnce ホスト(AppLaunch.ex...
-これにより、アセンブリの出所に対応する「セキュリティ制限...
-かつて『部分信頼』には、[[コード・アクセス・セキュリティ...
**UAC [#af95c055]
管理者権限を持つClickOnceアプリケーションを実行することは...
-MSBuild エラー MSB3190~
https://msdn.microsoft.com/ja-jp/library/bb383802.aspx
>ClickOnce では、requireAdministrator または highestAvail...
--ClickOnce 配置でのセキュリティ、バージョン管理、および...
https://msdn.microsoft.com/ja-jp/library/ms228996.aspx
--常に管理者としてアプリケーションを実行させるには?[C#...
http://www.atmarkit.co.jp/fdotnet/dotnettips/958uacmanife...
ここにはハックがあり、管理者権限を持つ新しいプロセスを開...
-c# - Run as administrator: requireAdministrator & ClickO...
http://stackoverflow.com/questions/5713825/run-as-adminis...
*VSでの設定 [#ce5b0791]
**セキュリティ・タブ [#q280aeef]
セキュリティ・タブではアクセス許可を構成する。
-プロジェクトのプロパティの[セキュリティ]ページに、[Click...
-「ClickOnceアプリケーション」として発行する場合は、これ...
「アクセス許可」を与える場合、以下を設定する。
-『[[完全信頼>#o09c8186]]』
-『[[部分信頼>#i23be72f]]』
--[[コードグループと証拠>コード・アクセス・セキュリティ#g...
--各、アクセス許可(パーミッション)を選択すると、設定し...
---[アクセス許可の検出]ボタンを押せば、選択した「セキュリ...
---[アクセス許可の検出]は静的な検出であり、実行時に動的に...
**署名タブ [#m1b10b31]
署名タブでは「コード サイニング証明書」による『署名』を行...
-デフォルトは何も設定されていないが、『発行ウィザード』を...
-開発時の「コード サイニング証明書」は自己署名なので、
--certmgr.exeコマンドライン ツールを使用して「信頼された...
--本番では、信頼されたルート証明機関に「コード サイニング...
***参考 [#o965d804]
-「[[コード サイニング証明書>証明書#oa4d84a6]]」
-ClickOnce 信頼された発行者の設定~
https://msdn.microsoft.com/ja-jp/library/ms996418.aspx
**発行タブ [#h7fc5a66]
発行タブでは発行を行う。
『発行ウィザード』より詳細な設定が必要な場合、~
プロジェクトのプロパティを開き、[発行]タブに移動する。
ここでは、以下の設定が可能である。
***[[配置場所>#r2eb39e5]] [#tb0578ec]
「配布用フォルダ」の「発行場所」
***『[[インストール モード>#m40bf456]]』 [#u05f8f8b]
***発行するバージョン番号 [#f7a69081]
***インストーラに含める必須コンポーネント [#n58c8769]
必須コンポーネントのインストールにはインストール権限が必...
-連載 ClickOnceの真実:第5回 実行環境を確実に整える必須コ...
http://www.atmarkit.co.jp/ait/articles/0609/09/news019.html
-.MSIセットアップで必須コンポーネントを利用するには?[VS...
http://www.atmarkit.co.jp/fdotnet/dotnettips/496msibootst...
-方法 : ClickOnce アプリケーションと共に必須コンポーネン...
https://msdn.microsoft.com/ja-jp/library/8st7th1x.aspx
-方法 : ClickOnce アプリケーションと共に必須コンポーネン...
https://msdn.microsoft.com/ja-jp/library/hh873130.aspx
*ストレージ [#n07c7128]
**分離ストレージ [#jd510991]
「分離ストレージ」とは、主に『部分信頼』の「セキュリティ...
-分離ストレージを活用するには?[C#、VB] - @IT~
http://www.atmarkit.co.jp/fdotnet/dotnettips/578isolateds...
-分離ストレージでディレクトリを使うには?[C#、VB] - @...
http://www.atmarkit.co.jp/fdotnet/dotnettips/584isolateds...
**インストール先 [#db964986]
-正確にはキャッシュ領域は、”%USERPROFILE%\Local Settings\...
-プロジェクト出力に「埋め込まれたリソース」として追加され...
独自定義ファイル、または、業務データの保存先はココに格納...
**独自定義ファイルの配布方法 [#b9e05bac]
ClickOnceでは定義ファイルの配布・自動更新が問題となること...
以下、問題点の一例である。
-app.config の書き換え後は、「再発行」して自動更新を行う...
-app.config、[[user.config>http://www.atmarkit.co.jp/fdot...
保存先のディレクトリ(「%USERPROFILE%\Local Settings\Apps...
ランダムな乱数値が含まれるため、ユーザ(もしくは設定プロ...
--このため、設定変更に伴う*.configの「再発行」が必要にな...
--また、*.configの設定値は、「再発行」の後、ディレクトリ...
このような問題があるため、*.configファイルではなく、独自...
***埋め込まれたリソース [#e9c62785]
-メリット
--配布・自動更新対象となる。
--配置位置(フォルダ)への権限を意識しなくて良い。
-デメリット~
テキストエディタを使用した編集が不可能(設定変更時は、再...
-その他、注意点~
読込用のAPIが特殊(Assembly.GetManifestResourceStreamを使...
***ファイルとして配布 [#o8bd8321]
-メリット~
テキストエディタを使用した編集が可能。
-デメリット
--配布・自動更新対象とならない(ユーザによる配布・更新)。
--配置位置(フォルダ)への読込権限が必要 。
---環境変数「ALLUSERSPROFILE」以下のディレクトリを使用可...
---複数ユーザ間で設定を共有するには、環境変数「ALLUSERSPR...
-その他、注意点~
[[XBAP]]以外でカレント ディレクトリを配置位置として使用し...
更新時、カレント ディレクトリが変更され、設定の変更を保持...
***プログラムにより初期設定を行う。 [#ob7003c4]
-メリット
--配布・自動更新対象となる(埋め込まれたリソースをテンプ...
--配置位置(フォルダ)への書込権限が必要 。
---環境変数「USERSPROFILE」or「APPDATA」以下のディレクト...
---環境変数に対応した絶対パス指定が必要となる。
--テキストエディタを使用した編集が可能。
-デメリット~
少々、作りこみが必要となる(初期設定、更新時のデータ引継...
-その他、注意点
--読込用のAPIが特殊(Assembly.GetManifestResourceStreamを...
--[[XBAP]]以外でカレント ディレクトリを配置位置として使用...
更新時、カレント ディレクトリが変更され、設定の変更を保持...
*データ アクセス [#e22605c7]
可能(Silverlightやストアアプリでは不可能だが)
*プリンタ出力 [#xf26e90b]
可能
**ClickOnceによる帳票直接印刷 [#kf6da640]
https://social.msdn.microsoft.com/Forums/ja-JP/73084ab7-3...
>ASP.NETでレポートを生成して、結果をClickOnceで直接印刷す...
**プリンタ・ドライバのデプロイ [#o55b2ec7]
-必須コンポーネント(*.msi)に含めてインストールすること...
-ただし、必須コンポーネントのインストールにはインストール...
*追加可能なカスタム動作 [#n7b2bd36]
「ClickOnceアプリケーション」に追加することができるカスタ...
-System.Deployment.Applicationクラスライブラリ~
https://msdn.microsoft.com/ja-jp/library/system.deploymen...
**バージョン番号の表示 [#oec2186b]
「ClickOnceアプリケーション」のバージョン番号を表示する。
**自動更新 [#x26414e4]
更新されたバージョンがないかをサーバに問合せ、更新を行う。
**オンデマンドでアセンブリをダウンロード [#d77a2c2d]
-カスタム動作の作成~
https://msdn.microsoft.com/ja-jp/library/d9k65z2d(v=vs.90...
--チュートリアル : ClickOnce 配置 API を使用して必要に応...
https://msdn.microsoft.com/ja-jp/library/ms228997(v=vs.90...
**.etc [#i2070742]
*更新 [#rdc120a4]
**ロールバック [#dcee78d5]
「ClickOnceアプリケーション」は、「1つ前のバージョンにロ...
コントロール パネルを開き、そこから[プログラムの追加と削...
表示された[プログラムの追加と削除]ダイアログで[プログラム...
ロールバックしたい「ClickOnceアプリケーション」の[変更と...
すると「アンインストール」もしくは「ロールバック」するた...
-[ClickOnceの保守]ダイアログが表示される
--[アプリケーションを以前の状態に復元します。]オプション ...
--[このコンピューターからアプリケーションを削除します。]...
ここで[アプリケーションを以前の状態に復元します。]を選択...
この場合、「ClickOnceアプリケーション」をアンインストール...
**更新方法の選択 [#c7506804]
-ClickOnce の更新方法の選択~
https://msdn.microsoft.com/ja-jp/library/s22azw1e.aspx
***更新をスキップされないようにするには? [#ia2979f5]
更新するか?スキップするか?の選択は、オフライン実行を選...
一度スキップすると7日間ほど更新のダイアログが表示されな...
サーバの更新後は最新のプログラムを使用する必要がある場合...
+publish.htmから起動する。そうすれば自動更新される。
+オフライン実行を不可能にする。ショートカットからの起動が...
+ClickOnce Deployment APIを使用して、アプリケーション自身...
+更新の必須化
>「アプリケーションに最低限必要なバージョン」を指定してお...
それよりも古いバージョンのアプリケーションを実行不可とす...
*ブラウザのサポート状況 [#db0faaa0]
IE以外のブラウザのサポート状況について。
**Firefox [#ibd3c2ce]
-2015/03/02:Firefoxに以下のPlugin追加し.NET4.5で動作確認...
-2016/01/25:「このアドオンは管理者によって無効化されてい...
-Microsoft .NET Framework Assistant Add-ons for Firefox~
https://addons.mozilla.org/ja/firefox/addon/microsoft-net...
--Microsoft .NET Framework Assistant 1.3.1
--作者: Microsoft Corporation
--Adds ClickOnce support and the ability to report instal...
This extension requires version 3.5 SP1 (or greater) of t...
**Chrome [#b913c608]
Chromeには、Microsoft純正のPluginが無い模様。~
(純正でないPluginは幾つか確認できるが何が良いのか解らな...
下記「ClickOnce for Chrome」を試たが動作しなかった。
-ClickOnce for Chrome~
http://www.clickoncechrome.com/
**Microsoft Edge [#t5dac9bf]
ClickOnceやNo-Touch Deploymentが動作しない。
**参考 [#eb356165]
-ClickOnce - Wikipedia, the free encyclopedia~
http://en.wikipedia.org/wiki/ClickOnce#Browser_support
-Browser support for ClickOnce deployement~
https://social.msdn.microsoft.com/forums/windows/en-us/49...
-.net - ClickOnce for Chrome now that NPAPI is not suppor...
http://stackoverflow.com/questions/26123714/clickonce-for...
-Google、いよいよ新年からChrome向けNPAPIプラグインを全面...
http://jp.techcrunch.com/2014/11/25/20141124chrome-will-s...
-Windows 10 に搭載される 新しいブラウザ Microsoft Edgeに...
http://tunemicky.blogspot.jp/2015/07/windows-10-microsoft...
*参考 [#e56d59d4]
-[[プログラムの配付技術]]
-Insider.NET ClickOnceの真実 - @IT~
http://www.atmarkit.co.jp/ait/subtop/features/dotnet/clic...
-ClickOnce について 松崎 剛 Blog~
https://blogs.msdn.microsoft.com/tsmatsuz/2006/08/15/clic...
-ClickOnce と Windows インストーラの使い分け~
http://msdn.microsoft.com/ja-jp/library/ms973805.aspx
-ClickOnce採用時のセキュリティ観点での注意事項、および制...
fullvirtue.com ITアーキテクトのブログ
http://fullvirtue.com/clickonce%E6%8E%A1%E7%94%A8%E6%99%8...
--ClickOnce アプリケーションのセキュリティ~
https://msdn.microsoft.com/ja-jp/library/76e4d2xw(loband)...
--ClickOnce 配置でのサーバーおよびクライアント構成の問題~
https://msdn.microsoft.com/ja-jp/library/ms228998.aspx
--ClickOnce 配置でのセキュリティ、バージョン管理、および...
https://msdn.microsoft.com/ja-jp/library/ms228996.aspx
--方法 : 配置の更新用に別の場所を指定する~
https://msdn.microsoft.com/ja-jp/library/16z3sw0x.aspx
--ClickOnce 配置の固有のエラーのトラブルシューティング~
https://msdn.microsoft.com/ja-jp/library/ms229001.aspx
**色々 [#md77b51b]
調べれば色々できる。
-ClickOnce の配置を管理する~
https://msdn.microsoft.com/ja-jp/library/aa480721.aspx
--はじめに
--ClickOnce アプリケーションを発行して配置する
--ClickOnce アプリケーションをインストールして起動する
--ClickOnce アプリケーションを追跡する
--Windows 認証を使用する
--カスタム アプリケーション認証を使用する
--クエリ文字列パラメータを使用する
--カスタム クライアント プロキシを使用してアプリケーショ...
--ユーザー認証のまとめ
--ClickOnce アプリケーションへのアクセスを制限する
--Windows 認証を使用する
--カスタム認証
--クエリ文字列パラメータを使用する
--カスタム クライアント プロキシを使用する
--ユーザー承認のまとめ
--起動エラーに対処する
--まとめ
--その他のリソース
--付録
--発行ディレクトリ構造
--配置プロバイダを設定および変更する
-ClickOnce のセキュリティと配置~
https://msdn.microsoft.com/ja-jp/library/t71a733d.aspx
--ClickOnce 配置ストラテジの選択
--ClickOnce キャッシュの概要
--ClickOnce とアプリケーション設定
--Windows Vista の ClickOnce 配置
--ClickOnce アプリケーションのローカライズ
--ClickOnce アプリケーションのセキュリティ
--ClickOnce アプリケーションの発行
--ClickOnce の更新方法の選択
--ClickOnce 配置のトラブルシューティング
--ClickOnce に関するリファレンス
--ClickOnce 配置のサンプルとチュートリアル
----
Tags: [[:.NET開発]]
ページ名: