Board logo

标题: [网络连接] 求一个能自动更换XP桌面背景的批处理 [打印本页]

作者: luohuashan    时间: 2009-5-16 23:21     标题: 求一个能自动更换XP桌面背景的批处理

求一个能自动更换XP桌面背景的批处理  要求如下:

运行该批处理后能将该批处理自动添加到启动项里,背景图片的位置在网上邻居  如地址为  \\[url=file://\\192.168.1.1\\[/url]192.168.1.1\[/url]背景.bmp

[ 本帖最后由 luohuashan 于 2009-5-16 23:24 编辑 ]
作者: tireless    时间: 2009-5-17 00:27

  1. @reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /f /v SetWallpaper /d SetWallpaper.cmd
  2. @more +3 %0>%windir%\SetWallpaper.cmd & exit /b
  3. Windows Registry Editor Version 5.00
  4. ;@cls & start regedit /s "%~f0"
  5. ;@start RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters & exit /b
  6. [HKEY_CURRENT_USER\Control Panel\Desktop]
  7. "TileWallpaper"="0"
  8. "Wallpaper"="\\\\192.168.1.1\\背景.bmp"
  9. "WallpaperStyle"="2"
复制代码

作者: luohuashan    时间: 2009-5-18 10:23

运行了后 桌面的背景没更换成功呀  大哥!
作者: Batcher    时间: 2009-5-18 11:04     标题: 回复 3楼 的帖子

能不能先把图片拷贝到本机硬盘再设置背景?
作者: luohuashan    时间: 2009-5-18 12:35

嘿嘿,下面这个测试过 可以了 不过就是每次运行一定要按个回车  能把需要手动按回车的去?高手来帮下忙看!


@echo off&setlocal enabledelayedexpansion
rem  by    2007-12-10
title 桌面背景更换系统copyright by Dodoy&color 1f
:start
cls&set wjm=&set num=
copy %0 "%userprofile%\「开始」菜单\程序\启动\
echo\&echo  桌面自动更换系统,每天开机后将更换不同桌面。
echo\&echo  如需要自己更换桌面背景请手动修改!!!请按回车键继续....
set /p wjm=
if not "%wjm%"=="" goto loop
::  获取当前目录下bmp文件的总数
for %%a in (*.bmp) do set /a var+=1
:: 提取一个随机数,范围在文件总数之内
set /a w=%random%%%%var%+1
:: 循环所有bmp文件,每次给num加1,当num的值等于随机数就以这个文件为桌面
for %%a in (\\10.14.80.3\d\背景2008.bmp) do (
  set /a num+=1
  if !num! equ !w! set wjm=%%a
)
:loop
set wjm=%wjm:"=%
if not exist "%wjm%" (
   echo\&echo  你输入的文件名不正确
   ping/n 2 127.1>nul
   goto start
)
Rem ===================操作注册表=====================
set regadd=reg add "HKEY_CURRENT_USER\Control Panel\Desktop"
%regadd% /v TileWallpaper /d "0" /f>nul
%regadd% /v Wallpaper /d "%wjm%" /f>nul
%regadd% /v WallpaperStyle /d "2" /f>nul
Rem ====================更新==========================
RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
作者: Batcher    时间: 2009-5-18 16:19     标题: 回复 5楼 的帖子

把set /p wjm=删掉

本版规则
1、求代码、寻求代码解释、探讨代码得失的帖子均可发在本版块,其余话题禁止在本版讨论;
2、求助时,务必在顶楼一次性把问题交代清楚;若文字难以表述,请配图说明,或是上传附件;但是,一切操作应从节约论坛资源的角度出发,能文字说明清楚的就无需再发图片,小图能说明问题的尽量不截全图,在不影响效果的前提下尽量压缩图片及附件;
3、所发代码若不止一行,请务必用code标记把代码部分首尾括起来,以便他人复制;





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2