O nome de usuário que você definiu no comando Icacls
está errado, você deve estar executando como Admin, preferivelmente usando o oculto conta interna de administrador se você tiver acesso de usuário negado e usar seu nome de usuário. / p>
Em segundo lugar, certifique-se de definir o valor do registro Wallpaper
do usuário atual, na chave de registro HKEY_CURRENT_USER\Control Panel\Desktop
, que aponta para o papel de parede atual.
Observe que um logoff / restart é necessário em um idioma limitado, como o Batch, que não pode notificar sobre uma atualização do ambiente do sistema.
Tente isto:
Set "oldWall=%WinDir%\Web\wallpaper\Windows\img0.jpg"
Set "newWall=%~dp0img0.jpg"
Set "WallPath=%WinDir%\Web\Windows\"
(
Takeown.exe /F "%WallPath%" /R /D S
Icacls.exe "%WallPath%" /Grant "%username%":"F" /T
Del /Q "%oldWall%"
Copy "%newWall%" "%oldWall%"
REG ADD "HKCU\Control Panel\Desktop" /V "Wallpaper" /T "REG_SZ" /D "%oldWall%" /F
)1>Nul
Mas se sua finalidade é implantar um ISO do Windows com um conjunto de papéis de parede personalizado, a solução preferida é usar o WSIM ( Gerenciador de Imagem de Sistema do Windows ), que está incluído no WAIK ( Kit de Instalação Automatizada do Windows ) ou também conhecido como WADK ( Kit de Avaliação e Implantação do Windows ), assim você pode gerar um arquivo AutoUnattend.xml que deve ser enviado dentro do ISO junto com o arquivo setup.exe, Dessa forma, você pode modificar vários valores padrão ao instalar o Windows, como o papel de parede padrão para todos os usuários.