我正在玩 powershell,并通过更改注册表项来更改一些任务栏设置。例如,我编写了一个自动隐藏启用禁用功能。
$autoHideSettingsPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2";
$autoHideValueName = "Settings";
Function toggleAutohideRegistrySettings($enable)
{
$key = Get-ItemProperty -Path $autoHideSettingsPath -Name $autoHideValueName;
Write-Host "key is: " + $key
if($enable)
{
$key.$autoHIdeValueName[8] = $key.$autoHideValueName[8] -bor 1;
}else{
$key.$autoHIdeValueName[8] = $key.$autoHideValueName[8] -band 0;
}
Set-ItemProperty -Path $autoHideSettingsPath -Name $autoHideValueName -Value $key.$autoHideValueName;
}
注册表中的更改完美运行。但要生效,我需要重新启动 explorer.exe。我显然也可以在 PS 中做到这一点......但我注意到当你在菜单中应用自动隐藏设置(鼠标方式)时,explorer.exe 没有被重新启动。
所以我的问题是:如何在不重新启动 explorer.exe 的情况下将更改应用到 PS 中的任务栏?