注:测试电脑系统为win10,win7及11没测过。
在生活中,可能会有这种场景,即壁纸被统一锁定,导致我们无法通过常规方式自由更换。这时候我们可以选择以直接替换壁纸缓存文件的方式,来曲折更换我们的桌面壁纸。
首先,win10中,桌面壁纸一般是放在%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\
这个目录下(在文件资源管理器的地址栏里完整输入这个路径,回车即可),其中%USERPROFILE%
是你的用户目录。
在这个目录下,会看到一个文件和文件夹:
- TranscodedWallpaper
- CachedFiles/
进到CachedFiles/
下面,里面应该是有个JPG文件的,假设说我的叫做xxx.jpg
,这个名字要记下来,之后我们需要做的主要就是覆盖这个文件。
接下来随便找个地方建一个空白文件夹,做以下操作:
- 把你心仪的图片拖进这个文件夹,命名为1.jpg
- 在文件夹下新建一个a.bat,文件内容如下:
cd /d %~dp0
del /f/s/q %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\*.*
del /f/s/q %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\CachedFiles\*.*
xcopy /y 1.jpg %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\
xcopy /y 1.jpg %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\CachedFiles\
rename %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\1.jpg TranscodedWallpaper
rename %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes\CachedFiles\1.jpg xxx.jpg
RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters 1, True
pause
之后右键以管理员身份执行该bat文件,理论上壁纸就可以刷新。
如果还是没变,可以在桌面空白处右键刷新几次;
如果还是不行,可以试试下面两种方式:
- 多次执行上面命令 + 桌面刷新;
- 重启电脑后,再执行几次上面命令;
重启大法,亲测没有重启解决不了的。
代码里刷新壁纸,是执行了以下命令:
RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters 1, True