通过使用Powershell的PinnedApplications
模块,我也取得了一些成功。我再次能够固定记事本,但不是我的自定义EXE,可能是因为尝试手动固定到任务栏需要在此应用上使用SHIFT+Right Click
,而在记事本上我们只能使用right-click
来执行此操作。 / p>
这让我相信这是一个需要在脚本中克服的步骤 - 但是在这种情况下如何模拟shift + right click
?
Powershell代码:
Set-PinnedApplication -Action PinToStartMenu -FilePath "C:\WINDOWS\system32\notepad.exe"
VBScript Run As Verbs的输出:
open run as admin open with brackets troubleshoot compatibility edit with notepad++ git init here git bash add to archive ... add to "selfhelp.rar" compress and email ... compress to "selfhelp.rar" and email scan with webroot restore previous versions _____ (blank entry, looks like this corresponds with 'Send To' action) Cut copy create shortcut delete rename properties
我有一个名为IT Self Help.EXE
的自定义应用,我希望使用VBScript自动将其固定到用户的开始菜单。
使用提供的代码here,我能够将记事本固定到开始菜单(其中notepad.exe保存在system32中):
Set objShell = CreateObject("Shell.Application")
'Declare constants
Const CSIDL_COMMON_PROGRAMS = &H17
Const CSIDL_PROGRAMS = &H2
strNotepadIcon = "notepad.exe"
Set objFolder = objShell.Namespace("C:\windows\system32")
Set objFolderItem = objFolder.ParseName(strNotepadIcon)
Set colVerbs = objFolderItem.Verbs
For Each objVerb in colVerbs
If Replace(objVerb.name, "&", "") = "Pin to Start Menu" Then objVerb.DoIt
Next
但是,如果我将IT Self Help的副本保存到System32中,并运行以下脚本,则脚本完全没有响应(没有错误,也没有固定):
Set objShell = CreateObject("Shell.Application")
'Declare constants
Const CSIDL_COMMON_PROGRAMS = &H17
Const CSIDL_PROGRAMS = &H2
strNotepadIcon = "IT Self Help.exe"
Set objFolder = objShell.Namespace("C:\windows\system32")
Set objFolderItem = objFolder.ParseName(strNotepadIcon)
Set colVerbs = objFolderItem.Verbs
For Each objVerb in colVerbs
If Replace(objVerb.name, "&", "") = "Pin to Start Menu" Then
objVerb.DoIt
Next
任何人都可以提供任何有关为什么这可能不起作用的提示吗?
我已经读过这种类型的访问是故意从Windows中删除的,但我似乎无法找到更多信息:
https://blogs.msdn.microsoft.com/oldnewthing/archive/2003/09/03/54760.aspx
有没有人知道究竟是什么阻止我添加IT自助帮助可以毫无问题地添加记事本?
答案 0 :(得分:0)
此功能似乎仅适用于已安装在本机上的应用程序。
由于我的应用程序是一个独立的exe而没有任何安装,我认为这是不可能的,除非我把它打包到安装程序