我有一个安装程序项目(Visual Studio安装项目),它具有指向项目输出的桌面和开始菜单链接。这两个快捷方式都链接到相同的输出程序集。
当我尝试执行卸载时,出现以下错误:
警告1910.无法删除Shortcut Bing Background.lnk。验证快捷方式文件是否存在以及是否可以访问它。
知道造成这种情况的原因以及如何解决这个问题?
答案 0 :(得分:5)
实际上,只读属性似乎在不断地再现这个问题(在Win Vista和7上执行多个测试)。对于那些感兴趣的人,我做了一个小DLL来检查属性,如果存在则将其删除。你可以找到它attached to this thread post (page 2)。您可以在使用any tool you have创建的包中使用DLL,只要它构建基于MSI的设置。
我猜,不能肯定的是,Windows Installer会修改此INI文件,例如,如果删除的快捷方式是由用户在安装后自定义的。
我做了一些测试,创建了一个安装桌面快捷方式并运行它的软件包,在卸载和安装过程中我可以看到msiexec.exe不断访问“desktop.ini”。然后我从包中删除了快捷方式,并从Process Monitor清除了日志,然后是新的安装和卸载过程。我找不到任何msiexec.exe访问desktop.ini的痕迹了。
我没有太多时间来搜索有关Windows Installer访问此文件的原因的文档,但在搜索时我找不到任何内容。考虑到此文件的属性必须不受影响,我们很可能是微软的朋友没有公布任何关于此事的官方消息。
答案 1 :(得分:1)
请参阅此主题:Warning deleting shortcuts in Windows 8
调查仍在进行中,但我想分享一些 信息。似乎具有desktop.ini的repro机器 如果设置了只读属性,则会在卸载时生成消息 出现。如果删除了只读属性,则消息不会 出现。对于每台计算机安装的软件包,可以使用desktop.ini 兴趣将位于此处:: \ Users \ Public \ Public Desktop。 请随意分享您对此的反馈,我将再次发布 有信息要分享。
答案 2 :(得分:1)
请注意,Desktop文件夹中可能有两个名为" desktop.ini"的文件,因此请务必检查每个文件的属性。
并且他们不会按名称排序,以便它们并排显示,因此很容易错过有两个文件。
这解释了为什么有两个" desktop.ini"文件:http://www.howtogeek.com/198704/why-are-there-two-desktop.ini-files-on-windows-desktops/
答案 3 :(得分:0)
由于desktop.ini文件上的只读设置,会发生这种情况。有关详细信息,请参阅here。