Замена файлов installShield2010 XML при изменении и удалке
-
26-10-2019 - |
Вопрос
Я успешно получил свое доказательство концепции MSI -установщика, создающего файл XML и обновляю элементы, как я и хотел при свежей установке. У меня есть 6 функций, если функция выбрана для установки, я хочу, чтобы узел был создан для этой функции, и набор атрибутов на основе свойства.
Если я изменяю установку и удаляю ранее установленную функцию, я хочу, чтобы узел XML был создан для его постоянного а также Я хочу установить атрибут, который я установил, чтобы быть обновленным на основе одного и того же свойства (которое теперь имеет другое значение).
Можно ли использовать существующую функциональность InstallShield для этого? Похоже, я мог бы и избежать написания пользовательского действия для обновления моего XML при удалении функции. Похоже, что нет большой документации на isxmlcfg.dll и пользовательских действиях в нем.
CA ISXMLUNINSTALL работает при удалении функции - но все, что делает это действие, удаляет узел или оставьте его ...
Решение
Проблема, с которой вы, вероятно, столкнетесь, заключается в том, что, хотя вы использовали это свойство в чем -то (скажем, установщик Windows Registery, INI или XML) не является изначально сохраняющим свойства в базе данных. Вы должны сделать это себе. Поэтому, если вы хотите сделать ремонт, изменить, обновить или что -то еще, и вы хотите иметь те же данные о свойствах, вы не только должны сохранить его до чего -то (скажем, XML), но и должны иметь приложение CorroSponding (XMLSearch) Это может притянуть его обратно в свойство, чтобы у него было значение, которое нужно показать во время пользовательского интерфейса, и или записывать обратно в XML позже.
Также рассмотрите возможность поддержки шаблона, в которой он прочитал в временном свойство и назначена недвижимости только в том случае, если недвижимость уже не имеет значения. Таким образом, кто -то мог сделать тихой установки (обновление) и передать свойство в качестве переопределения того, что было ранее настроено. (Нет заглушки по поиску)