2

バージョン間で機能ツリーが大幅に変更された製品があるためMigrateFeatures="yes"、要素のオプションがUpgradeVersion機能していないようです。

古い機能を新しい機能に手動で変換するにはどうすればよいですか? カスタム アクションが必要ですか? その場合、そこからどのようにすればよいですか?

4

1 に答える 1

3

私の知る限り、機能ツリー構造は関係ありません。機能テーブルの名前と一致するため、それらがすべて一致する場合でも、ある程度の移行が得られます。これはタイトルではなく名前であるため、名前が同じでも UI のタイトルが異なっていても問題ないことに注意してください。したがって、それがレイアウトだけであるか、名前の値の多くであるかによって、何が変更されたかに正確に依存します。

それ以外の場合は、カスタム アクションで ADDLOCAL を設定して、インストール済みリストから機能のリストを設定する必要があります。これは、MsiEnumFeatures と MsiQueryFeatureState で照会する必要があります。または、コードは、インストールされた機能を検出し、機能の ADDLOCAL コマンド ラインで MSI を起動する外部ランチャーにある可能性があります。おそらく、機能ダイアログは提供されません。それが唯一の方法だと思います。

于 2015-01-27T18:16:26.943 に答える