当ClickOnce AutoUpdate部署的应用程序在Windows 7上自动更新时,应用程序将从任务栏中取消固定。有没有办法阻止它取消固定?
答案 0 :(得分:1)
如果未安装ClickOnce应用程序,则很可能无法实现此目的。 什么时候安装;我不确定。
将ClickOnce应用程序下载到用户的临时目录。当应用程序下载最新版本时,此版本存储在新的子目录中,而不会覆盖“正常”应用程序更新的情况。
答案 1 :(得分:1)
我不知道如何防止它被取消固定,但有一种方法可以使用vbs脚本来固定一个不应该被代码执行的exe:
Call AddToTaskbar("C:\temp\", "MyExe.exe")
Function AddToTaskbar (Path, File)
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(Path)
Set objFolderItem = objFolder.ParseName(File)
Set colVerbs = objFolderItem.Verbs
For Each objVerb in colVerbs
If Replace(objVerb.name, "&", "") = "Pin to Taskbar" Then
'WScript.Echo objVerb
objVerb.DoIt
End If
Next
End Function
这基本上依赖于具有“Pin to Taskbar”条目的exe的右键菜单。不幸的是,除非有人拥有所有翻译的列表,否则它会使英语具体化。
答案 2 :(得分:0)
我根本没有看到这个问题。我假设您第一次运行时将应用程序手动固定到任务栏。
您的目标是.NET 3.5(SP-1)吗?您是否有ClickOnce为您创建桌面快捷方式,或者您是否以编程方式执行此操作?桌面快捷方式是否消失?
每次发布更新时,它是否会从任务栏中消失,或者只是经常发生这种情况?
RobinDotNet
答案 3 :(得分:0)
我不确定Windows 7如何处理它,但我使用类似于this的代码将appref-ms复制到开始菜单上的启动文件夹。我认为我的代码(在我的工作机器上,我周末休息)也检查这是否是一个新安装,所以如果它是更新,它不会更改快捷方式。
答案 4 :(得分:0)
在“发布”选项卡上的Visual Studio 2010中。我单击选项,选择清单并单击创建桌面快捷方式。在发布更新并且用户安装了更新之后,这由开始菜单快捷方式保留。以前,开始菜单快捷方式将消失,必须重新固定。