Разрешить пользователю изменять развернутые контакты панели задач в win10

Я работаю над развертыванием Windows 10 и хочу использовать LayoutModification.xml для настройки панели задач . Развертывание работает отлично и вносит мои изменения, но пользователи не могут удалить эти закрепленные элементы, когда они не нужны. Как я могу это допустить?

<LayoutModificationTemplate
    xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification"
    xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
    xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout"
    xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout"
    Version="1">
....  
   <CustomTaskbarLayoutCollection PinListPlacement="Replace" >
      <defaultlayout:TaskbarLayout>
        <taskbar:TaskbarPinList>
          <taskbar:UWA AppUserModelID="Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge" />
          <taskbar:DesktopApp DesktopApplicationLinkPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\System Tools\File Explorer.lnk" />
          <taskbar:DesktopApp DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\xxxxlnk" />

        </taskbar:TaskbarPinList>
      </defaultlayout:TaskbarLayout>
   </CustomTaskbarLayoutCollection>


</LayoutModificationTemplate>

РЕДАКТИРОВАНИЕ:

Это происходит в Win10 1703.

Я думал, что это могут быть просто некоторые права NTFS, но с использованием нового метода развертывания профиля этот файл LayoutModification.xml копируется из пользователя по умолчанию в локальный профиль пользователя только при создании. В стандартном профиле пользователя (со стандартными правами пользователя), если я редактирую закрепленный элемент в их копии LayoutModification.xml, он исчезает. Это обходной путь, но не совсем исправление.

2
задан 13 July 2017 в 17:48
2 ответа

Оглянулся на это несколько раз за последний год и пришел к выводу, что это невозможно.

0
ответ дан 3 December 2019 в 14:10

попробуйте этот скрипт после применения макета:

$regAliases = @("HKLM", "HKCU")

#Assign the start layout and force it to apply with "LockedStartLayout" at both the machine and user level

foreach ($regAlias in $regAliases){
    $basePath = $regAlias + ":\SOFTWARE\Policies\Microsoft\Windows"
    $keyPath = $basePath + "\Explorer" 
    IF(!(Test-Path -Path $keyPath)) { 
        New-Item -Path $basePath -Name "Explorer"
    }
    Set-ItemProperty -Path $keyPath -Name "LockedStartLayout" -Value 1
    Set-ItemProperty -Path $keyPath -Name "StartLayoutFile" -Value "C:\Windows\StartLayout.xml"
}

#Restart Explorer, open the start menu (necessary to load the new layout), and give it a few seconds to process

Stop-Process -name explorer
Start-Sleep -s 5
$wshell = New-Object -ComObject wscript.shell; $wshell.SendKeys('^{ESCAPE}')
Start-Sleep -s 5

#Enable the ability to pin items again by disabling "LockedStartLayout"

foreach ($regAlias in $regAliases){
    $basePath = $regAlias + ":\SOFTWARE\Policies\Microsoft\Windows"
    $keyPath = $basePath + "\Explorer" 
    Set-ItemProperty -Path $keyPath -Name "LockedStartLayout" -Value 0
}

#Restart Explorer and delete the layout file

Stop-Process -name explorer
0
ответ дан 23 September 2020 в 07:13

Теги

Похожие вопросы