bat更换壁纸并立即生效

chwp.ini 是chwp.cmd的配置文件 两个文件需要在同一目录下

chwp.ini 里面的 $wpdir 字段 决定了 需要更换壁纸的目录

需要更换壁纸的格式必须为jpg 名字必须为数字累加 如1.jpg 2.jpg 3.jpg......... 

因为此脚本需要用到第三方工具 convert.exe 将jpg 转换为bmp

所以 $convert 字段决定 convert.exe 的位置和名字

convert.exe 的下载地址: http://download.csdn.net/source/990688

 

注:此脚本在WindowsXP 和Windows Server 2003 下测试成功.

 

----chwp.ini------

[change Wallpaper]

$interval=1
# 壁纸更换的时间间隔, 单位为分钟.

$wpdir= ./Wallpaper
# 壁纸存放根目录

$method=left
# 壁纸更换模式: left 正向 right 反向 random 随机

$imgtype=jpg
# 壁纸文件类型

$convert=img_convert.exe
# convert.exe 命令行图片处理工具的位置
# 因为跟windows一个命令行工具重名,建议改名,如: img_convert.exe
# 下载地址: http://download.csdn.net/source/990688

 

 

----chwp.cmd----

@echo off
::ChWallpaper
set config=%~dpn0.ini
cd /d %~dp0
for /f "eol=# tokens=1,2 delims==" %%a in ('findstr /i "/<$.*=" "%config%"') do (set %%a=%%b)
for %%a in ("%$wpdir%/*.%$imgtype%") do (set/a total+=1)
call :picknum "%$method%" "%total%" "%~1"
call :chwp "%$wpdir%/%picknum%.%$imgtype%"
goto :eof
::function picknum(method,total,current){
 :picknum
 set/a cur=0
 set/a cur=%~3 2>nul
 if %cur% lss 0 (set/a cur=0)
 if %cur% gtr %~2 (set/a cur=%~2)
 if /i %~1 equ left (if %cur% equ %~2 (set/a picknum=1) else (set/a picknum=%cur%+1)&goto :eof)
 if /i %~1 equ right (if %cur% leq 1 (set/a picknum=%~2) else ( set/a picknum=%cur%-1)&goto :eof)
 if /i %~1 equ random goto :rand
 goto :eof
 :rand
 set/a rand=%random%%%%~2+1
 if %cur% equ %rand% (goto :rand) else (set picknum=%rand%&goto :eof)
::}
::function chwp(wallpaper){
 :chwp
 for /f "eol=! tokens=1-3 delims= " %%a in ('reg query "HKEY_CURRENT_USER/Control Panel/Desktop" /v Wallpaper ^| findstr "Wallpaper"') do (set wppath=%%c)
 %$convert% "%~f1" "%wppath%">nul
 reg add "HKEY_CURRENT_USER/Control Panel/Desktop" /v ConvertedWallpaper /d "%~f1" /f>nul
 gpupdate /force>nul
 RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
 goto :eof
::}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值