質問

XMLファイルを作成し、新鮮なインストールで希望どおりに要素を更新するコンセプトMSIインストーラーの実証に成功しました。 6つの機能があります。機能がインストールされるように選択されている場合は、その機能用に作成されたノードとプロパティに基づいて属性セットが必要です。

インストールを変更して以前にインストールされた機能を削除する場合、作成したXMLノードを持続させたい 設定した属性を設定して、同じプロパティ(現在は異なる値がある)に基づいて更新されるように設定したいと思います。

これを行うためにInstallShieldの既存の機能を活用することは可能ですか?機能を削除するときにXMLを更新するカスタムアクションを作成することができないようです。 isxmlcfg.dllとその中のカスタムアクションに関するドキュメントはあまりないようです。

CA ISXMLUNINSTALLは機能を削除するときに実行されていますが、アクションが行うすべてのものがノードを削除するか、それを残すことです...

役に立ちましたか?

解決

おそらくあなたが遭遇している問題は、何か(たとえば、登録、INI、またはXMLなど)でプロパティを使用していますが、Windowsインストーラーがデータベースにネイティブにプロパティを持続しないという事実です。あなたはこれをあなた自身でしなければなりません。したがって、修理、変更、アップグレードなどを行い、同じプロパティデータを持ちたい場合は、何か(XMLなど)に保存するだけでなく、CorroSponding AppSearch(XMLSearch)も必要です。それはそれをプロパティに引き戻すことができるので、UIの間に表示される値があり、または後でXMLに書き戻すことができます。

また、不動産がまだ値を持っていない場合にのみ、Tempプロパティに読み取り、不動産に割り当てられるパターンをサポートすることを検討してください。そうすれば、誰かがサイレントインストール(アップグレード)を実行し、以前に構成されていたものへのオーバーライドとしてプロパティを渡すことができます。 (検索による塊はありません)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top