アグリモの製品のすべてで採用している自動更新ライブラリの組み込み方法について説明していきます。
NuGetパッケージ管理などでもインストールすることができますが、日本語化も行いたいのでGitHubからソースをダウンロードしてプロジェクトに組み込む手順を説明します。
1.「AutoUpdater.NET」というライブラリをGitHubからダウンロードします。
https://github.com/ravibpatel/AutoUpdater.NET へアクセスし、「Clone or download」をクリックします。
「Download ZIP」をクリックし、ZIPファイルをダウンロードします。
2.ダウンロードしたZIPファイルを解凍して、新規に作成したソリューション内へ移動します。
↓ ソリューションの中へ移動する
3.「AutoUpdater.NET」のソリューションを開いて、キーファイルを削除した後、ソリューションリビルドを行います。
チェックを外して、「OK」をクリックします。
キーファイル(.snk)を削除します。(AutoUpdater.NET.snk と ZipExtractor.snk の2つ)
ソリューションクリーンを行います。
ソリューションリビルドを行います。
フォームをデザインできるか確認し、問題なければソリューションを閉じます。
4.新規に作成したソリューション内へ先ほど修正を行った「AutoUpdater.NET」プロジェクトを追加します。
「既存のプロジェクト」の追加を選択します。
プロジェクトファイルを選んで、「OK」をクリックします。
ソリューション内に「AutoUpdater.NET」プロジェクトが追加されます。
5.フォーム(DownloadUpdateDialog.cs、RemindLaterForm.cs、UpdateForm.cs)を必要に応じて日本語化します。
以下は、日本語化した場合のサンプルです。
6.最初に呼ばれるフォーム(例では Form1.cs)の Form_Loadイベントの最後に以下の1行を追加します。
AutoUpdater.Start(“http://sample.test.org/updater/autoupdate.xml”);
例では、updater関連ファイルを http://sample.test.org/updater/ に置いていると仮定しています。
7.プロジェクトのプロパティを開き、さらにアセンブリ情報を開きます。「アセンブリバージョン」と「ファイルバージョン」を次のバージョンにセットして「OK」をクリックします。
8.ソリューション全体をビルドして、セットアップファイル(sample.msi)を作成します。(※セットアップファイルの作成に関する説明は省略します。)
9.XMLファイル(autoupdate.xml)を次のように作成します。
1 2 3 4 5 6 7 |
<?xml version="1.0" encoding="UTF-8"?> <item> <title>サンプルプログラム 自動更新プログラム</title> <version>1.1.0.0</version> <url>http://sample.test.org/updater/sample.msi</url> <changelog>http://sample.test.org/updater/rerease_notes.htm</changelog> </item> |
10.リリースノートのファイル(rerease_notes.htm)を次のように作成します。
1 2 3 |
(1.0 から 1.1 への変更点)<br> ・画面の表示内容を一部修正しました。<br> <br> |
11.作成したセットアップファイル(sample.msi)、XMLファイル(autoupdate.xml)、リリースノートのファイル(rerease_notes.htm)をWebサーバーにFTP等でアップロードします。アップロード先は、XMLファイル(autoupdate.xml)内に記述してあるURLの場所です。
12.1つ前のバージョンのアプリ(例の場合は、WindowsFormsApp1.exe)を起動すると、Webサーバーから新しいバージョンのアプリがダウンロードされます。
ひかりFAX電話CTIの実行例です。