有没有办法使用 PowerShell 从 Windows 11 任务栏/开始菜单中删除某些固定的应用程序/链接?

有没有办法使用 PowerShell 从 Windows 11 任务栏/开始菜单中删除某些固定的应用程序/链接?

我需要使用 powershell 从 Windows 11 任务栏和开始菜单中删除某些固定应用程序(Microsoft Edge、Microsoft Store、Prime Video 等)。

我在 Google 上搜索了很多次,但还是没找到可行的解决方案。所有 Windows 10 解决方案都不起作用。

答案1

从在线文章中转录步骤,如果它有效,请告诉我们:

  1. 按照你喜欢的方式将应用程序固定到“开始”菜单
  2. 复制文件%LocalAppData%\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState\start.bin
  3. 将文件粘贴/移动到默认用户目录%SystemDrive%\Users\Default\AppData\Local\Packages\Microsoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy\LocalState\。过去,这意味着它仅适用于新用户配置文件,因此如果您有现有配置文件,则必须删除它们,以便在用户登录时重新创建它们,或者将此文件复制到他们的配置文件并让他们退出并重新登录(或重新启动)

我很好奇它是否会长期有效,因为看起来这不是微软认可的做事方式,这可能表明这是微软有意为之的设计选择和/或一个明显的疏忽,因为这个功能已经存在并且自 Win10 以来发生了变化。@John 的回答微软曾表示(尤其是文件关联) 他们的故意设计使得只有用户可以调整以前程序员/管理员可以为用户调整的内容。

答案2

当我在全新安装的 Windows 11 Pro 上看到 TikTok 时,我差点儿晕了!我以为戴尔或 MS HOME 版本会有这种功能,但全新安装的 MS pro 不会有。

是的,TikTok 在所有 Windows 11 Pro 全新安装中都隐藏在c:\program files\WindowsApp一堆其他 BS 之下。

首先 TakeOwn WindowsApp 文件夹。

cd program files
takeown /F WindowsApps /A /R /D Y   (Gives all admins control of this folder)

cd WindowsApps
attrib BytedancePte.Ltd.TikTok_1.0.5.0_neutral__6yccndn6064se -r -s -h
takeown /f BytedancePte.Ltd.TikTok_1.0.5.0_neutral__6yccndn6064se /grant "%USERDOMAIN%\%USERNAME%":(F) /t
rmdir BytedancePte.Ltd.TikTok_1.0.5.0_neutral__6yccndn6064se /q /s

然后我重复一遍……

icacls SpotifyAB.SpotifyMusic_1.200.1165.0_x86__zpdnekdrzrea0  /grant "%USERDOMAIN%\%USERNAME%":(F) /t
attrib SpotifyAB.SpotifyMusic_1.200.1165.0_x86__zpdnekdrzrea0 -r -h -s
rmdir SpotifyAB.SpotifyMusic_1.200.1165.0_x86__zpdnekdrzrea0 /q /s

在执行任何操作之前还必须禁用我的 AV 上的行为扫描器。

请注意有两个字节跳动文件夹。

我们还摆脱了迪士尼、ESPN 和 Adob​​e Express

可能有一个注册表项可以将它们放在开始菜单上 - 现在正在寻找

%USERDOMAIN%\%USERNAME%是“我”的代号

答案3

为了测试下面的 PowerShell 示例,我已将注册表编辑器固定到任务栏。

在下面的脚本中,定义了一个名为的函数UnPin-App ,用于取消固定任务栏上的固定应用程序,该应用程序的名称作为参数传递。随后,调用该函数来取消固定注册表编辑器。最后,explorer.exe重新启动。

要取消固定您的应用程序,请添加调用UnPin-App

function UnPin-App { param(
        [string]$appname
    )
    try {
        ((New-Object -Com Shell.Application).NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').Items() | ?{$_.Name -eq $appname}).Verbs() | ?{$_.Name.replace('&','') -match 'Unpin from taskbar'} | %{$_.DoIt()}
        return "App '$appname' unpinned from Taskbar"
    } catch {
        Write-Error "Error Unpinning App! (App-Name correct?)"
    }
}

UnPin-App "Registry Editor"

stop-process -name explorer –force

注意:这是在 Windows 10 上测试的。

答案4

我用这个.BAT解决了:

DEL /F /S /Q /A "%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\skype empresarial.lnk"

REG DELETE HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband\ /v FavoritesRemovedChanges /f

taskkill /f /im explorer.exe

start explorer.exe

相关内容