无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5528|回复: 34
打印 上一主题 下一主题

[原创] [20230320] 批处理:顺序和随机设置桌面壁纸(适用PE和正常系统)

  [复制链接]
跳转到指定楼层
1#
发表于 2022-11-29 15:12:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 BEIKING 于 2023-3-20 11:13 编辑
  1. @echo off
  2. Title 切换壁纸
  3. MODE con: Cols=40 Lines=10
  4. Color 2f

  5. Pushd "%CD%"&cd /d "%~dp0"
  6. for /f "tokens=2*" %%i in ('reg query "HKCU\Control Panel\Desktop" /v "WallPaper" 2^>nul') do Set "OWP=%%j"
  7. for /f "tokens=* usebackq" %%f in (`dir /b *.*^|find /v /c "%~nx0"`) do Set /a Count=%%f
  8. echo 壁纸数量: [%Count%]
  9. if %Count% == 0 Color cf&ping 127.1 -n 3 >nul&Exit /b

  10. REM 调用参数:-Next(默认) -Random +Next +Random
  11. Set CP=-&Set GP=顺序切换&Set Args=%1
  12. if defined Args (
  13.     Set "CP=%Args:~0,1%"
  14.     if /i `%Args:~1%` == `Random` Set GP=随机切换
  15. )
  16. Goto %GP%

  17. :顺序切换
  18. for /f "tokens=* usebackq" %%f in (`dir /b /o:d *.*^|find /v "%~nx0"`) do (
  19.     Copy "%%f"+,, "%%f" 1>nul 2>nul&Set "NWP=%%f"&Goto 设置壁纸
  20. )

  21. :随机切换
  22. Set /a RNum=%Random%%%%Count%+1 2>nul
  23. Set Num=1
  24. setlocal enabledelayedexpansion
  25. for /f "tokens=* usebackq" %%f in (`dir /b *.*^|find /v "%~nx0"`) do (
  26.     if !Num! == %RNum% (endlocal&Set RNum=[%RNum%] &Set "NWP=%%f"&Goto 设置壁纸)
  27.     Set /a Num+=1
  28. )

  29. :设置壁纸
  30. if /i `%CP%` == `+` (Copy /y "%NWP%" "%WinDir%\Web\Wallpaper\%NWP%" >nul&&Set "NWP=%WinDir%\Web\Wallpaper\%NWP%") else Set "NWP=%~dp0%NWP%"
  31. if "%GP%" == "随机切换" if "%OWP%" == "%NWP%" if "%Count%" gtr "1" Goto 随机切换
  32. echo %GP%: %RNum%↓
  33. echo %NWP%
  34. if exist %SystemRoot%\System32\Pecmd.exe (Pecmd WALL "%NWP%"&® delete "HKCU\Control Panel\Desktop" /f /v "Wallpaper.PECMD" 1>nul 2>nul) else (reg add "HKCU\Control Panel\Desktop" /f /v "WallPaper" /t REG_SZ /d "%NWP%" 1>nul 2>nul&&Call :刷新)
  35. if not defined Args ping 127.1 -n 2 >nul
  36. Exit /b

  37. :刷新 :: 可能不生效,需要手动重启资源管理器。
  38. Set n=20
  39. :循环
  40. Set /a n-=1
  41. @start "" rundll32.exe user32.dll,UpdatePerUserSystemParameters 1,True
  42. if "%n%" neq "0" Goto 循环
  43. Goto :eof
复制代码
PE系统,调用 Pecmd WALL 命令设置桌面壁纸,很稳定都生效
正常系统,注册表设置壁纸路径后,调用 rundll32.exe user32.dll,UpdatePerUserSystemParameters 1,True 刷新桌面,有一定概率不生效。需要多次刷新

调用参数:
-Next        顺序切换壁纸(默认)
+Next       顺序切换壁纸,壁纸文件拷入到%WinDir%\Web\Wallpaper\
-Random   随机切换壁纸
+Random  随机切换壁纸,壁纸文件拷入到%WinDir%\Web\Wallpaper\

使用方法:
将脚本文件置于壁纸同一目录执行,不支持下级目录。
壁纸目录只能有脚本文件和壁纸文件,不能存在其他文件或文件夹,会影响壁纸切换!

_切换壁纸.rar (1.02 KB, 下载次数: 84)

评分

参与人数 2无忧币 +10 收起 理由
cuicongyuan + 5 赞一个!
9zhmke + 5 赞一个!

查看全部评分

2#
 楼主| 发表于 2022-11-29 15:13:33 | 只看该作者

感觉应该比用第三方程序方便
回复

使用道具 举报

3#
发表于 2022-11-29 15:23:50 | 只看该作者
是呀这串 rundll32.exe user32.dll,UpdatePerUserSystemParameters,我有时也不会刷新生效。墙纸没更换成功

点评

我处理了,连续刷新20次,,可以的  详情 回复 发表于 2022-11-29 15:27
回复

使用道具 举报

4#
 楼主| 发表于 2022-11-29 15:27:18 | 只看该作者
a583091790 发表于 2022-11-29 15:23
是呀这串 rundll32.exe user32.dll,UpdatePerUserSystemParameters,我有时也不会刷新生效。墙纸没更换成功

我处理了,连续刷新20次,,可以的

点评

也许需要延时再刷新  详情 回复 发表于 2022-11-29 20:35
回复

使用道具 举报

5#
发表于 2022-11-29 15:28:12 | 只看该作者
pe随机壁纸,有点意思
回复

使用道具 举报

6#
发表于 2022-11-29 15:31:47 | 只看该作者
我改成2次 试试可以不 (随机设置桌面壁纸)
   先谢谢了
回复

使用道具 举报

7#
发表于 2022-11-29 15:35:30 | 只看该作者


感觉应该比用第三方程序方便
回复

使用道具 举报

8#
发表于 2022-11-29 15:38:04 | 只看该作者
系统有换壁纸的功能啊!

点评

刚看到pecmd有定时器  发表于 2022-11-29 16:46
感觉正常系统用批处理随机换壁纸意义不大,毕竟系统有这个功能。PE倒可以玩玩,方法很多,不过做成定时换壁纸就接近正常系统的样子了,WinXShell有更换壁纸的功能,通过WinXShell实现可能更好  发表于 2022-11-29 16:20
回复

使用道具 举报

9#
发表于 2022-11-29 18:19:48 | 只看该作者
也许需要延时再刷新
回复

使用道具 举报

10#
发表于 2022-11-29 18:50:15 | 只看该作者
用处不大,感谢分享
回复

使用道具 举报

11#
发表于 2022-11-29 20:06:00 | 只看该作者
谢谢分享
回复

使用道具 举报

12#
发表于 2022-11-29 20:09:53 | 只看该作者
谢谢分享
回复

使用道具 举报

13#
发表于 2022-11-29 20:25:37 | 只看该作者
支持!
回复

使用道具 举报

14#
发表于 2022-11-29 20:35:50 | 只看该作者
BEIKING 发表于 2022-11-29 15:27
我处理了,连续刷新20次,,可以的

也许需要延时再刷新
回复

使用道具 举报

15#
发表于 2022-11-29 21:27:32 | 只看该作者
感谢分享 很有用
回复

使用道具 举报

16#
发表于 2022-11-29 21:46:11 | 只看该作者
这个win7和win10不都可以随机更换壁纸吗?只要你选择主题就行了。

楼主这个应该是专门为PE设计的。
回复

使用道具 举报

17#
发表于 2022-11-29 21:50:58 | 只看该作者
感谢分享 很有用
回复

使用道具 举报

18#
发表于 2022-11-29 22:29:48 | 只看该作者
windows 11 系统 Set n=20 :循环 改成Set n=2 :循环 刷新2次没有更新壁纸,windows 11 PE没有问题,
回复

使用道具 举报

19#
发表于 2022-11-30 05:14:57 | 只看该作者
挺好的,换换风格。
回复

使用道具 举报

20#
发表于 2022-11-30 06:28:49 | 只看该作者
谢谢了啊
回复

使用道具 举报

21#
发表于 2022-11-30 09:18:30 | 只看该作者
来试试看呗。谢谢。
回复

使用道具 举报

22#
发表于 2022-11-30 09:43:50 | 只看该作者
感谢分享!
回复

使用道具 举报

23#
发表于 2022-12-3 17:21:50 | 只看该作者
Win7 X86 只能改一次,后面的不成功,结束explorer.exe也不行。也许需要重启
回复

使用道具 举报

24#
 楼主| 发表于 2023-3-20 11:13:48 | 只看该作者
壁纸切换脚本更新

调用参数:
-Next        顺序切换壁纸(默认)
+Next       顺序切换壁纸,壁纸文件拷入到%WinDir%\Web\Wallpaper\
-Random   随机切换壁纸
+Random  随机切换壁纸,壁纸文件拷入到%WinDir%\Web\Wallpaper\

使用方法:
将脚本文件置于壁纸同一目录执行,不支持下级目录。
壁纸目录只能有脚本文件和壁纸文件,不能存在其他文件或文件夹,会影响壁纸切换!
回复

使用道具 举报

25#
发表于 2023-3-20 16:46:22 | 只看该作者
随机壁纸,有点意思
回复

使用道具 举报

26#
发表于 2023-12-2 11:29:43 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

27#
发表于 2023-12-8 23:45:15 | 只看该作者
这个切换丝滑吗,会不会有闪屏现象?
回复

使用道具 举报

28#
发表于 2024-3-8 12:41:22 | 只看该作者
谢谢来着分享!!
回复

使用道具 举报

29#
发表于 2024-3-8 13:38:37 | 只看该作者
这个系统幻灯片不就是吗?
回复

使用道具 举报

30#
发表于 2024-3-16 10:29:38 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-23 10:19

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表