8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

#はじめに

Windowsデスクトップアプリを配布する技術として比較的最近登場したSquirrel.Windowsを
https://github.com/Squirrel/Squirrel.Windows
を参考に簡単にまとめた。

#Squirrel.Windowsとは

  • Windowsアプリをアップデート・配布するためのフレームワーク

  • Nugetパッケージを使ってインストールとアップデートパッケージを作成

  • Nuget ・・・Microsoftがサポートする.NETのコード共有メカニズム

  • .Netで作られていないアプリケーションでも使用可能

  • ClickOnceから移行可能

##ClickOnceとの比較

Windowsアプリの配布方法として一般的なClickOnceとSquirrel.Windowsを比較すると次のようになる

ClickOnce Squirrel.Windows
新しさ 古い 新しい
ライセンス MS製 OSS
アップデート時の問い合わせ あり なし
実装作業量 比較的軽い 比較的重い
バグの修正 今後行われないかも 随時修正(するはず)

メモ

  1. Squirrel.WindowsはNugetでパッケージングする部分が若干手間がかかるためClickOnceと比べると手間がかかるそう。
  2. Squirrel.Windowsもアップデート時の問い合わせを発生させることは可能

#Squirrel.Windowsの機能について
Squirrel.WindowsはGoogle Chromeのように簡単で早く、自動でインストールとアップデートを実現するために以下の機能を提供することを目指している。

  • 設定

  • 既存の.NETアプリケーション用のインストーラを容易に統合する

  • クライアントAPIは更新をチェックし、(できればHTMLで)更新履歴を受け取ることができる。

  • 開発者は、インストールとアップデート中にイベントとカスタムアクションの制御が可能

  • アンインストール時にアプリケーションのクリーンを行うことが可能

  • パッケージング

    • 既存の.NETアプリケーションを指定してインストーラを生成するのが、非常に簡単
    • アプリケーションのアップデートの作成が、簡単に自動化できる
    • デルタファイルをサポートしているので、更新パッケージのサイズが削減可能
  • アプリケーションの配布中の動作

  • アップデートサーバのホスティングが単純なHTTPを通して行われる

  • インストール

  • UACダイアログがない

  • ローカルのユーザーアカウントにインストール

  • 再起動を行わない

  • アップデート中の動作

  • アプリケーションの実行中にアップデートが適用可能

  • 再起動しない

  • 現在作動中の動作を中断しない

最後に

ひとまず現状の更新はここまで。
作業ステップについては随時更新予定。

 

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?