だるろぐ

明日できることは、今日しない。

Omawari 1.2.0.0:いわゆる Web 更新チェッカーだけど、細かいところを改善した

f:id:daruyanagi:20170923135951p:plain

  • メインリストビューに Last Update 欄を設ける
    • それに伴うコード整理
    • Refresh ボタンは不要になったので廃止
  • 通知トレイで DEBUG モードなのがわかるように
  • ファイル操作の非同期化 (メイン画面を初期表示&スクロールする際のカクツキを抑えた)
    • それに伴うリグレッションの修正
    • ついでにステータスバーに総稼働時間を表示するように
  • リファクタリング
  • Click Once がめんどいのでやめた(ごめんなさい!)

github.com

リリースアーカイブを毎回手で作るの面倒くさくなったので PowerShell にした

f:id:daruyanagi:20170923140119p:plain

ClickOnce って Web サーバーでホストしない場合、更新するのにいちいち古いバージョンのアンインストールが必要になって大変面倒くさいので、単に ZIP アーカイブでまとめて配布するようにした。そのパッケージを毎回手で作るのは面倒なので、PowerShell でアーカイブを作るスクリプトを描いた。

# 起点となる bin フォルダー
$root = Join-Path $PSScriptRoot "Omawari\bin"

# 入力フォルダー
$src = Join-Path $root "Release"

# 出力フォルダー
$version = (Get-ItemProperty (Join-Path $src "Omawari.exe")).VersionInfo.FileVersion
$dest = Join-Path $root Omawari-$version.zip

# ZIP で圧縮
Compress-Archive -Path $src/* -DestinationPath $dest

# フォルダーを開く
Invoke-Item $root

リリースビルドの実行ファイルのバージョンを読んで Omawari-*.*.*.*.zip という名前の ZIP アーカイブに圧縮するだけ。この程度の
PowerShell なら割と書けるようになってきた!(バージョンの取得の仕方はググったけど……)

コレでもアップデートは面倒なので、Chocolatey パッケージにすることも画策してる。