Visual studio 2010 Windows Installer不支持';单击应用程序快捷方式后才能完成安装?
我有一个MSI安装程序,它是从VS2010安装项目构建的。安装的一部分包括添加或修改注册表项。(如果安装是升级,而不是首次安装,则会修改密钥。) 第一次安装时,安装程序工作正常,但在升级时,在单击应用程序快捷方式之前,安装似乎仍不完整。我的意思是:安装成功完成,但是在单击安装过程创建的应用程序快捷方式(即“开始”菜单)之前,这些注册表项将不存在。此时,安装程序启动时会显示一条消息,内容如下:Visual studio 2010 Windows Installer不支持';单击应用程序快捷方式后才能完成安装?,visual-studio-2010,windows-installer,Visual Studio 2010,Windows Installer,我有一个MSI安装程序,它是从VS2010安装项目构建的。安装的一部分包括添加或修改注册表项。(如果安装是升级,而不是首次安装,则会修改密钥。) 第一次安装时,安装程序工作正常,但在升级时,在单击应用程序快捷方式之前,安装似乎仍不完整。我的意思是:安装成功完成,但是在单击安装过程创建的应用程序快捷方式(即“开始”菜单)之前,这些注册表项将不存在。此时,安装程序启动时会显示一条消息,内容如下:正在配置applicationXXX,请稍候…。这种情况只发生一次,然后写下钥匙,整个宇宙都很好 但为什么
正在配置applicationXXX,请稍候…
。这种情况只发生一次,然后写下钥匙,整个宇宙都很好
但为什么会发生这种情况?更重要的是,我如何“强制”安装程序完成安装并写入这些注册表项,而不必单击应用程序快捷方式?我还应该提到,直接运行应用程序的可执行文件不会触发这个最终安装过程;只有在单击快捷方式时,它似乎才起作用
如有任何帮助/见解,将不胜感激 当使用快捷方式时,安装会自动修复,因为该快捷方式不可用。这是Windows Installer对损坏安装的正常行为 要确定升级期间未安装注册表项的原因,请尝试创建一个
注册表项组件的键路径很可能被视为已安装。如果键路径是文件而不是实际的注册表项,则可能发生这种情况。您可以检查表中的关键路径(使用Orca编辑MSI)。为了防止其他人出现此问题,事实证明真正的罪魁祸首是Visual Studio错误:谢谢你。好消息。从看日志中学到了一些有趣的东西。升级是先安装新版本,然后删除旧版本。删除过程删除了注册表项。然而,当我试图在一个新的安装项目中复制这种情况时,注册表项在升级过程中被正确修改,而在删除原始应用程序时没有被删除。让我觉得我的安装程序被破坏了。为了解决这个问题,除了修改注册表项的值外,我还重新命名了注册表项。这实际上也解决了我的问题!我的不同之处在于,我的升级案例引发了一个错误“
System.BadImageFormatException:无法加载文件或程序集'C:\Program Files(x86)\{Program}\{assembly}.dll”或其依赖项之一。此程序集由比当前加载的运行时更新的运行时生成,无法加载。
”在升级到Visual Studio 2010的同时,我还将.NET Framework从3.5.1升级到了4.0。