2011年2月9日水曜日

.NET アプリケーションの配布方法

Visual Studio で作成したアプリケーションの配布方法について。

  1. リリースビルドを行い \bin\Release の exe を配布
    exe 単体で動作するアプリケーションであれば一番手軽な方法です。
    フリーウェア等で良く使われています。
    • 長所
      exe を直接配布しても良し、zip 圧縮して配布しても良し、と配布側にとっては手軽
    • 短所
      「適当なフォルダーを作成して~」等、ユーザーに手動でセットアップを行う多少の知識が必要(初心者だとデスクトップに exe を置いてそのまま実行なんて事も)
      exe の他に dll やドキュメントを一緒に配布する場合には不向き
      アップデートは手動で exe を上書き
  2. ClickOnce による配布
    MS が推している?配布方法です。
    ビルドメニューから発行ウィザードで publish 以下に作成されたファイル群を配布します。
    • 長所
      ネットで配布しているなら、セットアップファイルの作成->アップロード->ダウンロードページ更新など一連の発行処理が一括で行われる、アップデート毎の配布負担が軽減される
      簡単なアプリケーションであれば自動アップデートが使えて保守が楽
    • 短所
      アプリケーションの配置先が \Documents and Settings\[ユーザー名]\Local Settings\Apps に固定(\Program Files ~にアプリケーションを配置できない)
      Windows Installer の方が融通が利く
  3. セットアッププロジェクトによる配布
    既存のソリューションにセットアッププロジェクトを追加し Windows Installer の MSI パッケージを作成する方法です。
    • 長所
      Visual Studio から作成が行えて設定も簡単
      インストールウィザードなど Windows Installer の機能が幾つか使用可能
    • 短所
      Visual Studio Express では作成できない
      自動アップデートは行えない(新バージョンセットアップ時に旧バージョンの自動アンインストールは可能)
  4. サードパーティ製インストーラによる配布
    InstallShield などを使用してセットアップパッケージを作成して配布します。
    • 長所
      高機能、かゆいところに手が届く
    • 短所
      Visual Studio とは別に購入する為、費用がかかる
  5. フリーのインストーラによる配布
    オープンソースの WiX を使用して MSI のセットアップパッケージを作成して配布します。
    • 長所
      マイクロソフト製なので Visual Studio との親和性が高い
    • 短所
      基本英語

個人的には設定が簡単で一番慣れてる、という事もあり 3番の配布方法を常用しています。ゆくゆくは WiX へ移行してみたいですね。

■関連リンク
WiX Toolset