[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 求助bat脚本从局域网取图片设定为桌面,但是刷新后壁纸没变需要多次执行才可以

求助,bat批处理从局域网文件夹取图片设定为桌面,但是刷新后壁纸没变需要多次执行才可以,而且代码设定的是拉伸,注册表显示也是拉伸但是实际壁纸不是按照拉伸显示的。

下方是我写的代码
  1. @echo off
  2. for /f "tokens=2,*" %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Personal"') do (
  3. set user_doc=%%j
  4. )
  5. echo %user_doc%
  6. md "%user_doc%\bz"
  7. net use Z: \\192.168.0.254\ad 123456 /user:administrator
  8. copy Z:\img.jpg %user_doc%\bz
  9. net use Z: /del > nul
  10. reg add "hkcu\control panel\desktop" /v Wallpaper /d "%user_doc%\bz\img.jpg" /f
  11. reg add "hkcu\control panel\desktop" /v WallpaperStyle /t REG_DWORD /d 2 /f
  12. RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
  13. taskkill /f /im explorer.exe
  14. cmd /c start explorer
复制代码

回复 1# sditwzh
  1. @echo off
  2. %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("""%~f0""","::",,"runas",1)(close)&exit /b
  3. setlocal enabledelayedexpansion
  4. cd /d "%~dp0"
  5. ::试例服务器IP:192.168.1.111
  6. ::试例服务器用户名:Administrator
  7. ::试例服务器用户名登陆密码:Adm1234560
  8. ::试例服务器共享文件位置:E:\123\Wallpaper.JPG
  9. net use * /del /y  >nul 2>nul
  10. net use x: \\192.168.1.111\ipe$ "Adm1234560" /user:"admin"   >nul 2>nul
  11. @net time \\192.168.1.111 /set /y  >nul 2>nul
  12. @echo f | xcopy \\192.168.1.111\e\123\Wallpaper.JPG C:\Wallpaper.JPG  /Y >nul 2>nul
  13. reg add "hkcu\control panel\desktop"  /v Wallpaper  /d  C:\Wallpaper.JPG  /f
  14. ::壁纸显示方式(0 居中 1 平铺  2  拉伸)
  15. reg add "hkcu\control panel\desktop"  /v WallpaperStyle  /t  REG_DWORD  /d 2  /f
  16. RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters
  17. net use * /del /y  >nul 2>nul
  18. exit
复制代码

TOP

本帖最后由 sditwzh 于 2023-2-16 13:11 编辑

回复 2# yakeyun

壁纸设置成功了,但是不是拉伸

TOP

回复 3# sditwzh

检查下注册表键值,看看拉伸参数是否修改正确。
有的注册表项需要超级管理权限,这种需要借助NSudo软件提权操作。

TOP

回复 4# yakeyun


    注册表显示是2,但是很明显图片大小不对,

TOP

我在单位局域网上使用了bat,可以把bmp作为壁纸,明天争取贴出来。
目的,学习批处理

TOP

回复 6# hlzj88


    xiexie

TOP

如果你公司用了域服务器,在域控设置就好了呀~~

TOP

如果目标主机的显示器比例都是一样的,你壁纸做得像素以最大显示器为准的做,这样就不用考虑拉不拉伸了,只考虑复制和设置成壁纸就行了

TOP

返回列表