使用Windows Server 2012时,旧快捷方式不会从产品升级开始时从开始菜单中删除
-
21-12-2019 - |
题
当我们在Windows Server 2012计算机上升级时,旧快捷方式在开始菜单中留下。可执行文件从系统中删除,但旧的快捷方式仍然导致用户单击时出错,因为它不再在系统上。
这不会发生在Windows 2008 R2上,我认为我不认为我们的MSI是如何构建的问题。我在这里询问这个问题,看看其他人是否经历过同样的问题。
如果它可能有帮助,我们使用wix构建MSI,这里是代码段:
<DirectoryRef Id="The_ShortCut">
<Component Id="The_ShortCut" Guid="{our-guid}">
<Shortcut Id="TheShortCut.exe"
Name="Config Wizard"
Description="$(var.ProductNameLong)"
Target="[ShortCutFolder]OurCompany.Product.TheShortCut.exe"
WorkingDirectory="ShortCutFolder"
Icon="TheShortcutIcon.Ico">
<Icon Id="TheShortcutIcon.Ico" SourceFile="oursourcepath"/>
</Shortcut>
<RegistryValue Root="HKCU" Key="Software\OurCompany\OurProduct" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
<RemoveFolder Id="Remove_Product" Directory="OurCompany" On="uninstall"/>
<RemoveFolder Id="Remove_Product_ShortCut" Directory="OurProduct_ShortCut" On="uninstall"/>
</Component>
</DirectoryRef>
. 解决方案
我从同事的情况下得到了这个令人满意的答案:
这看起来不像您的包装本身。固定的项目只是对您第一次固定它的位置的* .lnk文件的引用。如果在升级后右键单击损坏的图块并转到文件位置,则它将旧的快捷键文件夹(由于文件夹路径已更改,因此不再存在)。
它似乎都是预期的行为。从这个线程,我不确定有一种方法可以以编程方式更新固定项目。欢呼!
不隶属于 StackOverflow