Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2010 从UpgradeCode中查找应用程序安装路径_Visual Studio 2010_Windows Installer_Setup Project - Fatal编程技术网

Visual studio 2010 从UpgradeCode中查找应用程序安装路径

Visual studio 2010 从UpgradeCode中查找应用程序安装路径,visual-studio-2010,windows-installer,setup-project,Visual Studio 2010,Windows Installer,Setup Project,我在使用VisualStudio2010安装和部署项目时遇到了一些“不便”。假设我有两个应用程序:App1和App2。这两个应用程序都有单独的MSi安装包,可以安装到不同的位置。App1需要知道App2安装在哪里。之前我向App1提供了App2安装包的“ProductCode”值。这样,App1可以找到App2的安装路径,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall中的“ProductCode”键中

我在使用VisualStudio2010安装和部署项目时遇到了一些“不便”。假设我有两个应用程序:App1和App2。这两个应用程序都有单独的MSi安装包,可以安装到不同的位置。App1需要知道App2安装在哪里。之前我向App1提供了App2安装包的“ProductCode”值。这样,App1可以找到App2的安装路径,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall中的“ProductCode”键中查找适当的值

现在我更新了App2安装包的版本,Visual Studio敦促我更改产品代码。它已更改,现在App1无法成功使用以前的ProductCode查找App2的安装路径。当然,我可以给App1提供新的产品代码,但每次更新App2版本时,我都会被迫这样做。此外,旧版本的App1将无法找到新版本的App2,因为它的新产品代码未知

所以我需要更多的“持久性”方法来查找App2安装路径。我想到了VisualStudio安装和部署项目的UpgradeCode价值,除非开发人员出于某种原因自行更改,否则它永远不会更改。但我在注册表中找不到任何升级代码的痕迹

有人知道升级代码保存在哪里吗?或者当我们知道存在升级代码时,可能是找到实际产品代码的方法?也许有人有更好的方法来查找应用程序的安装路径? 提前感谢。

使用该函数枚举与升级代码匹配的产品