26

私のシナリオは次のとおりです。インストーラーで古いバージョン (アプリケーションの有効期間中にアプリケーションによって作成されたものを除くすべてのファイル)を完全に削除し、新しいバージョンに置き換えるようにします。

私の Wix スクリプトでは、製品 ID とパッケージ ID に自動生成された GUID (アスタリスク) を使用していますが、常に同じままの UpgradeCode には独自の GUID を使用しています。私のシナリオに関して、Component タグにも自動生成された GUID (アスタリスク) を安全に使用できるかどうかわかりません。

これまでは NSIS を使用していました。Wix を試してみたかったのですが、NSIS は 1 ~ 2 日で始めることができるのに対し、フォーラムの人々はそれを学ぶのに約 30 日かかると言っているので、少し疑問がありました. ただし、一般的なユーザーが必要とする標準インストールの場合、Wix を使用して非常に優れたインストーラー パッケージを入手するのに 2 日かかりました。xml の知識が少しあれば、おそらく心配する必要はありません。Wix を作成してくれた Rob と他のすべての貢献者に感謝します!

4

1 に答える 1

32

はい、auto-guidComponent/@Guidは安全です。これらは、コンポーネント ルールに違反しないように、そのコンポーネントのリリース間で安定した方法で GUID が生成されるようにするために、非常に特別に行われます 。

さらに、コンポーネントを他の製品共有せず、常にメジャー アップグレードを使用、メジャー アップグレードを早期にスケジュールする場合、コンポーネント GUID についてあまり心配する必要はありません。2 つのコンポーネント GUID 定義がオンになることはないからです。同時にマシン。たとえば、MajorUpgrade要素のデフォルトでは、正確に次のようになります。

<MajorUpgrade DowngradeErrorMessage='A newer version of [ProductName] is installed.' />

したがって、答えは「はい」です。:)

于 2013-04-20T13:58:43.110 に答える