C#2005 SP3
是否可以检索用于安装同一应用程序的以前的upgradeCode? p>
我向许多客户或我们的客户提供了申请。
他们使用MSI安装我们的应用程序。
每次我发布新版本的错误修复或次要升级。在安装项目属性中,我增加版本号并更改产品代码(我总是保留相同的升级代码)。我将'RemovePreviousVersion'设置为true。
然而,几周前,我意外地更改了upgradeCode并向我们的客户发布了新版本。直到现在,客户才想知道他们为什么在“添加删除程序”中拥有相同应用程序的其他实例。它安装正常,但他们必须卸载以前的版本。
我想知道是否可以取回用于安装这些版本的原始升级。当我使用相同的安装项目时,我不再拥有该升级代码了吗?
我仍然拥有使用原始升级代码构建的所有原始setups.exe,但我不确定他们是否可以帮助我。
非常感谢任何建议,
答案 0 :(得分:2)
如果我正确理解了您的问题,那么您正在尝试检索产品的UpgradeCode GUID,以便您可以将其嵌入到MSI的下一个版本中,即您无法记住它是什么。
如果那是你的问题......
它存储在注册表中,因此进行一些拖网应该可以带来红利。
如果你去:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer
你会在UserData ... \ Products下找到很多条目。其中一个或多个将是您的产品。然后,如果您在UpgradeCodes中搜索包含产品密钥的密钥,您将找到GUIDS。
唯一棘手的一点是它们是用奇怪的符号写的,所以:
{ABCDEFGH-IJKL-MNOP-QRST-uvwxyz123456}
变为:
hgfedcbalkjiponmrqtsvuxwzy214365