【问题标题】:XML(.config) change during installation(installshield 2010)安装期间 XML(.config) 更改(installshield 2010)
【发布时间】:2023-08-16 12:59:01
【问题描述】:

我正在开发 installshield 2010 应用程序,但“文本文件更改”和“xml 文件更改”不适合修改配置文件(包括 app.config),因为不支持应用条件(如“if”语句)并制作修复了 xml 文件中的元素(属性)顺序。

有人可以建议“安装期间配置更改的最佳实践”吗?

【问题讨论】:

  • 你能举一个前后XML的例子吗?我没有完全理解您的问题,因为技术上属性顺序无关紧要。
  • 技术上属性顺序应该不重要,对吧。但是 .config 文件应该在我们的应用程序中很容易修改并且应该很容易看到。因此,原始 app.config 的元素顺序很重要。并且,xml 文件更改会产生不必要的关闭标记。例如,原始 .config 文件中的 。但是导入后, 变成了。另一件事是,例如,如果选择了某些特定功能或复选框,则应添加或删除元素或属性。我认为这不能通过仅使用 xml 文件更改来完成(没有脚本)。
  • 在 XML 中 应该是相同的,这并不重要。现在 HTML 是一个完全不同的故事......

标签: xml app-config installshield basic-msi


【解决方案1】:

InstallShield 使用 MSXML 进行更新,这是 DOM 的行为。如果这对您来说是不可接受的,那么您将不得不假装它不是 XML 并使用文本更改模式或编写您自己的自定义操作。

既然您询问“最佳实践”,我会说有效的 XML 是有效的 XML,如果您担心人们手动编辑它的可读性,那么如果他们不正确,也许他们不应该手动编辑它了解 XML。

让我想起了 1990 年代的一个老笑话,那个用户在得知 INI 文件是什么时就知道足够危险。

多年来争论的另一个最佳实践是这种配置是否甚至属于安装程序。我一直这样做,但有很多不/不会。他们坚持在应用程序中保留配置;通常在第一次运行时完成。

【讨论】: