プラ通信たまプラーザで生活、仕事する「たまデジ。LINE2005.06.18さて、ようやく主題であるアップグレードインストーラの話に入れる。アップグレードインストーラとは、すでにインストール済みであるアプリケーションを、そのままの状態でアップグレードできるインストーラだ。当たり前のような事を書いているかも知れないが、古いバージョンのアプリケーションを認識し、重複のないように新しいアプリケーションで置き換えるにはそれなりの工夫が必要だ。アップグレードインストーラの基本的な動作を、以下のように定義しよう。古いバージョンを探してアンインストール。新しいバージョンをインストール。これだけだが、これだけのことのために苦難の日々が待ち受けていようとは、誰も予想できなかったはずだ。Installerには備えられてない。よって、Orcaデータベースエディタのお世話にならざるを得ない。最初に断っておくが、これから書く内容ではうまくアップグレードインストーラを作成することはできなかったのである。Microsoft社のドキュメントに書いてある内容に従って実行したが、足りない部分があるようだ。Installer+Orcaではない。これを最初に書いておく。アップグレード前のインストーラファイルをOrcaで開き、以下のプロパティの値を控えておく。[Property]-[ProductVersion][Property]-[UpgradeCode]アップグレードインストーラを新規に作成する場合には、ProductVersionをアップさせる。3桁目までしか判別できないから注意。UpgradeCodeを合わせる。UpgradeCodeが同じものは同類のアプリケーションとして認識させ、ProductVersionで新旧の区別などをしているわけだ。これが最低限の下地となる。Installerで作業して、プロジェクトのプロパティを変更すればいい。[製品情報]タブからバージョンの項目を変更し、製品コードの項目を新規コードボタンを押して変更する。間違っても、更新用コードの方を変更しないこと。Installerのヘルプでは、これだけでアップグレードインストーラを作成できるかのようなことが書いてあるが、実際はこうはいかない。インストーラファイルをいじくる必要がありそうだ。調査したところでは、ほかにも作業が必要なようだ。これについては長くなるので、次回に回したい。【ブログ】プロフィール画像をリニューアル何年かぶりに、このブログのプロフィール画像をリニューアルしました。これまでの画像は包丁にドライバーという、この姿で住宅街をうろついていたら即逮捕という出で立ちでしたので、現在のアイデンティティに合わせて描き直してもらいました。え?誰に?ソフトウェア開発DelphiでCのようなstatic変数を使う方法。プログラミング言語Delphiで、C言語のようにstatic変数を使う方法。Pascalの流儀から言うと邪道とも言える方法なのだが、実用上は便利。Mapsの地図を表示する(1)今回は、「ホームページ」カテゴリの記事です。ブログだから「ホームページ」カテゴリの記事とはなんぞや?とか思われるでしょうが、私が別にやってるWebサイト「なおさん亭::新館」のメンテナンス記事です。いうことで、ASP.NETでWebサイト...ソフトウェア開発Twitterウィジェットをブログに貼るこれまでブログに貼っていたTwitterのパーツがイマイチだったので、新しいものに付け替えてみました。2010/2/18現在。ソフトウェア開発1から10を足すアルゴリズム「掛け算のアルゴリズム」の参照が多いようなので、こんな単純な算法の話題もいいかと思い、今回は「1から10を足すアルゴリズム」というのを取り上げてみることにした。日付指定できるようにする祝日なのに、「新館」の話で恐縮です(何の関係もない)。最近、「新館」の「写真館」に昔の写真などを登録して、「新着情報」などに書いていますが、その古い写真を見るためにどうすればいい?というあたりが抜け落ちていました。日付を選べるよう...スポンサーリンクアップグレードインストーラ作成記(3)イチゴが実をつけました。プロジェクトのプロパティ>製品情報>製品コードの新規コードを押してやると解決するようです。更新コードは押しちゃいけないので、ここを参照。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。ホームソフトウェア開発スポンサーリンク自己紹介この記事を書いた人なおさん個人事業「たまデジ。最近ようやく本人が大っぴらに活動できるようになった。10)NASの空き容量が足りないと思ったらごみ箱機能に気を付けよう。Serverデータベースをローカルにバックアップする【日記】見上げてみよう、スズカケノキとユリノキ【Web開発】データベース・テーブルの更新日時を知る「無効なMS-DOSファンクション」と闘う。APIを導入しよう【執筆記事】クライアントサイドとサーバサイドの「良いとこ取り」。「無効なMS-DOSファンクション」と闘う。「無効なMS-DOSファンクション」と闘う。