[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
没有立即显示,可以尝试重启explorer.exe进程。
按月更换,可以在批处理中创建计划任务。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 7楼 的帖子

  1. @echo off
  2. REM 周一到周日每天使用不同的桌面背景
  3. REM 假设系统日期格式是 2015/04/20 周一
  4. REM 在 C:\桌面背景图片 文件夹下面准备七个图片 周一.bmp 周二.bmp 周三.bmp 。。。
  5. reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v Wallpaper /d "C:\桌面背景图片\%date:~11%.bmp" /f
  6. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
复制代码
JPG格式可以参考这个:
趁今天有点空,发点实用的P

我知道这个有人发过,全部搜索了一遍,我的还是有不同点的。
我的能设置jpg图片为背景,前面也有人发过能设jpg图片的,不过要DLL文件支持,而我的不用。
其中好像涉及到系统自动将jpg转化为bmp格式的问题,希望有识之士能研究出来系统怎么个自动转换的原理。

"%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
此为当前桌面背景完整路径。

测试环境:XP SP2
  1. ::复制更换桌面背景.bat::
  2. ::将bmp格式图片拖入P中
  3. @echo off
  4. title 更换桌面背景
  5. cd/d %~dp0
  6. if /i %~x1==.BMP copy %1 "%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
  7. echo 正在更换桌面背景
  8. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
  9. goto :eof
  10. ::复制更换桌面背景.bat::
  11. ::::::::::::::::::::::::
复制代码
这个在论坛有人发过。
  1. ::一般更换墙纸.bat::
  2. ::图片为bmp格式
  3. ::拖入bmp格式图片即设置它为背景。
  4. ::直接双击运行,若当前目录中有bmp格式图片,则将名称排在最后的一张设为壁纸
  5. @echo off
  6. title 更换墙纸
  7. setlocal enableDelayedExpansion
  8. set pic=%1
  9. if "!pic!"=="" call :search
  10. if "!pic!"=="" set pic="%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
  11. echo 正在添加注册表项目...
  12. reg add "HKCU\Control Panel\Desktop" /v Wallpaper /d !pic! /f>nul
  13. reg add "HKCU\Control Panel\Desktop" /v WallpaperStyle /d "2" /f>nul
  14. echo 正在更换桌面背景
  15. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
  16. goto :eof
  17. :search
  18.  cd/d "%~dp0"
  19.  for /f "delims=" %%a in ('dir/b *.bmp') do (
  20.   set pic="%~dp0%%a"
  21.  )
  22.  goto :eof
  23. ::一般更换壁纸.bat::
  24. ::::::::::::::::::::
复制代码
  1. ::强制更换壁纸.bat::
  2. ::有些系统不能成功
  3. ::图片为bmp或jpg格式
  4. ::如果图片格式为jpg,则桌面图标文字有背景色(成功设置后,运行一遍下面的还原壁纸可去除背景色)
  5. ::拖入图片运行
  6. ::双击直接运行,名字排后的一张设为背景
  7. ::同时可以禁止通过桌面属性来更改壁纸(用软件更改不能禁止)
  8. @echo off
  9. title 更换壁纸
  10. setlocal enableDelayedExpansion
  11. set pic=%1
  12. if "!pic!"=="" call :search
  13. if "!pic!"=="" set pic="%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
  14. echo 正在添加注册表项目...
  15. reg add "HKCU\Control Panel\Desktop" /v Wallpaper /d !pic! /f>nul
  16. reg add "HKCU\Control Panel\Desktop" /v WallpaperStyle /d "2" /f>nul
  17. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v Wallpaper /d !pic! /f>nul
  18. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v WallpaperStyle /d "2" /f>nul
  19. echo 正在更换桌面背景
  20. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
  21. goto :eof
  22. :search
  23.  cd/d "%~dp0"
  24.  for /f "delims=" %%a in ('dir/b *.jpg *.bmp') do (
  25.   set pic="%~dp0%%a"
  26.  )
  27.  goto :eof
  28. ::强制更换壁纸.bat::
  29. ::::::::::::::::::::
复制代码
  1. ::还原壁纸.bat::
  2. ::确保有"%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
  3. @echo off
  4. title 还原壁纸
  5. set pic="%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
  6. echo 正在添加注册表项目...
  7. reg add "HKCU\Control Panel\Desktop" /v Wallpaper /d %pic% /f>nul
  8. reg add "HKCU\Control Panel\Desktop" /v WallpaperStyle /d "2" /f>nul
  9. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v Wallpaper /d %pic% /f>nul
  10. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v WallpaperStyle /d "2" /f>nul
  11. echo 正在还原桌面背景
  12. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
  13. goto :eof
  14. ::还原壁纸.bat::
  15. ::::::::::::::::
复制代码
  1. ::取消壁纸限制.bat::
  2. @echo off
  3. title 取消壁纸限制
  4. echo 正在删除注册表项目...
  5. reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v Wallpaper /f>nul
  6. reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v WallpaperStyle /f>nul
  7. echo 正在刷新
  8. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
  9. goto :eof
  10. ::取消壁纸限制.bat::
  11. ::::::::::::::::::::
复制代码
说明文档
存放桌面背景的几个路径
-------------------------
C:\WINDOWS\Web\Wallpaper
::jpg桌面(还有Bliss.bmp)
C:\WINDOWS
::bmp桌面
[图片收藏]或[我的图片][My Pictures]
::jpg、bmp、gif
-------------------------
其他两个位置
-------------------------
你指定的图片位置
::jpg、bmp、gif
"%userProfile%\Local Settings\Application Data\Microsoft\Wallpaper1.bmp"
::无特殊情况即为当前桌面背景
=========================

原文地址:http://www.cn-dos.net/forum/viewthread.php?tid=41491
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表