タイトル : Re^5: アプリのバージョンアップについて 投稿日 : 2017/04/06(Thu) 10:43 投稿者 : 魔界の仮面弁士
> それで起動してもらったらなぜかインストールが始まり インストールされたファイルの一部が変更された場合、破損とみなして 自動修復する機構があるためです。(修復には元のインストーラーが必要です) > しかし、UpgradeCodeもProductCodeも > 暗号見たいに35桁もあり 暗号というか乱数ですが、それは本当に35桁でしたか? これらは、Version 4 の UUID が使われるので、 「38桁」の文字列になるはずなのです。 (実際には Version 4 以外の UUID 値も指定できますが) この文字列は、下記の形式になっていると思います。大文字小文字は区別されません。 {xxxxxxxx-xxxx-Yxxx-Zxxx-xxxxxxxxxxxx} x 部は 16進数(0〜9,A〜F) Y 部は '4' 固定 Z 部は 8,9,A,B のいずれか > 直せる値では無いようです インストーラーを再作成する際に、これらのプロパティに 新しい値をセットすること自体は、さほど難しくはありません。 各プロパティの右端に表示される[...]ボタンから、 [プロダクト コード]ダイアログや [アップグレード コード]ダイアログを開き、 [新規コード(N)]ボタンを押すだけで、新しい値がセットされます。 また、そもそも Version プロパティを更新した場合には、 ProductCode を変更するかどうかの確認ダイアログが 表示されますので、そこで「はい」を選択しても書き換わります。 あるいは GuidGen.exe を使って生成することもできます。 このツールは [ツール]-[GUID の作成]メニューから呼び出せます。 なお、変更前には元の値も記録しておいたほうが良いでしょう。そうすれば、 「ProductCode を変更するつもりで、うっかり UpgradeCode を更新してしまった」 といったミスを起こしたときにも対処しやすくなります。 |