我不会使用 MSI 来部署注册表设置。指向系统设置的 MSI 是“松散的大炮”。MSI 认为它“拥有”密钥,并且会很高兴地删除或恢复它。以下是一些细节:
循环自我修复:如果另一个 MSI 包引用相同的注册表项,在某些情况下您可能会遇到循环自我修复循环。大多数管理员至少见过几次。如果你不知道去哪里找就很难修复。我在stackoverflow上为此写了一个很长的答案:如何调试循环自我修复(推荐系统管理员阅读)。更多关于自我修复或“自我修复”的信息:
包干扰:如果您真的很不走运并且编写了一个可以修复的 MSI - 被调用 - 甚至只是自我修复 - 这会自动发生 - 在某些时候,您可以覆盖/恢复已被后续更改更改的设置。这种场景通常很难调试。不过,您可以在事件日志中找到导致问题的包。它甚至指定了导致问题的组件,但从那里开始需要 MSI 的专业知识。Stefan Kruger ( MSI MVP )关于这个主题的好文章。
这些只是我头脑中的一些问题,我当然忘记了一些。
为系统管理员提供核心 MSI 信息的其他答案: