【问题标题】:How To Pin RUN.LNK to Taskbar, Verbs are Missing如何将 RUN.LNK 固定到任务栏,缺少动词
【发布时间】:2015-02-09 23:53:58
【问题描述】:

我在尝试将 RUN.LNK 固定到我的 2012 任务栏时遇到了困难。我在这里和其他地方使用了各种引脚示例,但没有运气。我已经尝试了所有分散在磁盘周围的 RUN.LNK,但没有成功。

这些都没有 Pin 或 Unpin 动词。 我很困惑,因为我可以从 Metro 磁贴中手动固定。 我不知道这些是从哪里来的。 从磁贴执行打开文件位置让我进入 RUN.LNK,但它没有用于固定的动词。

我想固定 RUN、CMD、SERVICES、EVENTS 和其他一些日常使用图标。 我的脚本得到了大部分,但没有 RUN.LNK。

【问题讨论】:

    标签: powershell taskbar


    【解决方案1】:

    解决方案是使用 ActiveX 对象和 FileRun() 方法创建一个新链接。这可以使用 Powershell 或 JScript 来完成。测试表明,由于 Powershell 启动延迟,JScript 方法要快得多。

    此代码在 Powershell 3.0 命令窗口中进行了复制/粘贴测试。为清楚起见,删除了所有错误检查等。

    1) 创建一个包含内容的 RUN.JS 文件 'new ActiveXObject("Shell.Application").FileRun();'

    2) 创建一个指向 RUN.JS 文件的 RUN.LNK。

    3) 将新链接固定到任务栏

    # -------------
    # Create RUN.JS
    # -------------
    Out-File -Force -FilePath 'c:\windows\run.js' -InputObject 'new ActiveXObject("Shell.Application").FileRun();'
    
    
    # -----------
    # Create Link
    # -----------
    $objWsh                  = New-Object -ComObject Wscript.Shell
    $objLnk                  = $objWsh.CreateShortcut('c:\windows\run.lnk')
    $objLnk.Arguments        = 'c:\windows\run.js'
    $objLnk.Description      = 'Open RUN Box'
    $objLnk.IconLocation     = 'c:\windows\system32\shell32.dll,-25'
    $objLnk.TargetPath       = 'c:\windows\system32\wscript.exe'
    $objLnk.WorkingDirectory = 'c:\windows\'
    $objLnk.Save()
    
    
    # --------------
    # Pin to Taskbar
    # --------------
    $objShell = New-Object -ComObject Shell.Application
    $objItem  = $objShell.Namespace(0).Parsename('c:\windows\run.lnk')
    $objVerb  = $objItem.Verbs() | ? { $_.Name -like '*Pin to Tas*' }
    $objVerb.Doit()
    
    # -------
    # Cleanup
    # -------
    [Runtime.InteropServices.Marshal]::ReleaseComObject($objWsh)
    [Runtime.InteropServices.Marshal]::ReleaseComObject($objShell)
    

    【讨论】:

      猜你喜欢
      • 2016-06-06
      • 1970-01-01
      • 2023-03-03
      • 2011-04-21
      • 2012-09-04
      • 2019-12-31
      • 1970-01-01
      • 1970-01-01
      • 2016-12-07
      相关资源
      最近更新 更多