如何解决Win注册表HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Installer \ {CODE}中使用的{CODE}是什么?
安装msi后,Windows注册表将在 HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Installer 中添加键 {CODE} 。我希望 {CODE} 是正在安装的应用程序的产品代码,但它们不匹配。
例如,如果我安装产品代码为{E4703DAD-63CA-4A57-B9E3-D7887318B036}的msi软件包,则会看到添加的密钥为 HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Installer \ FAD3074EAC3675A49B3E7D4837810B63
我确实看到了这样的 {CODE} 是恒定的,而不管我的应用程序的版本或软件包代码为何(这就是为什么我期望它与产品代码-或与产品代码有某种关系)
解决方法
我终于弄清楚了 {CODE} 的构造方式。我看到一些有关它的引用,称为压缩GUID,它的确基于产品代码。 {CODE} 是产品代码“反转”。
您可以轻松查看是否同时将 {CODE} 和产品代码与破折号对齐
Product Code: {E4703DAD-63CA-4A57-B9E3-D7887318B036}
{CODE} with dash: FAD3074E-AC36-75A4-9B3E-7D4837810B63
前3组基本上是直接反转(63CA-> AC36),而后2组在2个字符的基础上反转(B9E3-> 9B3E)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。