使用批处理命令制作_切换壁纸  适用于PE环境

使用批处理命令制作_切换壁纸 适用于PE环境

使用批处理命令制作_切换壁纸  适用于PE环境 GRUD

发表文章数:651

开通31天会员

月费会员折扣、会员尊享资源。

开通31天会员

开通90天会员

季费会员折扣、会员尊享资源。

开通90天会员

开通365天会员

年费会员折扣、会员尊享资源。

开通365天会员
摘要:

使用批处理命令制作_切换壁纸 适用于PE环境 @echo off if /i %UserName% == SYSTEM (Goto GotAdmin) else (reg query HKLM\SYSTEM\ControlSet001\Control\MiniNT 1 nul 2 nul&&Goto GotAdmin) :BatchGotAdmin Set...

使用批处理命令制作_切换壁纸 适用于PE环境

@echo off
if /i "%UserName%" == "SYSTEM" (Goto GotAdmin) else (reg query "HKLM\SYSTEM\ControlSet001\Control\MiniNT" 1>nul 2>nul&&Goto GotAdmin)
:BatchGotAdmin
Set _Args=%*
if `%1` neq `` Set "_Args=%_Args:"=""%"
if exist %WinDir%\System32\fltMC.exe fltMC 1>nul 2>nul||mshta VBScript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c """"%~f0"" %_Args%""",,"runas",1)(Window.Close) 2>nul&&Exit /b

:GotAdmin
Pushd "%CD%"&cd /d "%~dp0"
Title 切换壁纸&(if exist %WinDir%\System32\ureg.dll Mode 40,10 2>nul)&Color 2f

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

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

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

:随机切换
Set /a RNum=%Random%%%%Count%+1 2>nul
Set Num=1
Setlocal EnableDelayedExpansion
for /f "tokens=* usebackq" %%f in (`dir /a-d-s-h /b *.*^|find /v "%~nx0"`) do (
    if !Num! == %RNum% (Endlocal&Set RNum=[%RNum%] &Set "NWP=%%~f"&Goto 设置壁纸)
    Set /a Num+=1
)
Endlocal&Exit /b

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

:刷新 :: 可能不生效,需要手动重启资源管理器。
Set n=20
:循环
Set /a n-=1
@start "" rundll32.exe user32.dll,UpdatePerUserSystemParameters 1,True
if "%n%" neq "0" Goto 循环
Goto :eof

未经允许不得转载作者: GRUD, 转载或复制请以 超链接形式 并注明出处 科技之星网站
原文地址: 《 使用批处理命令制作_切换壁纸 适用于PE环境》 发布于 2025-4-6


扫描二维码,在手机上阅读
资源下载
抱歉,下载地址 评论 后刷新可见
收藏
    分享到:
    打赏

    评论 2

    评论前必须登录!

      注册

    1. #1

      x

      MvMzmQrT 6 个月前 回复
      • 您好!看起来您可能不小心发表了一个简短的评论。关于文章“使用批处理命令制作_切换壁纸 适用于PE环境”,如果有具体问题或想要了解更多细节,请随时告诉我,我会很乐意为您提供更详细的帮助和解答。期待您的进一步交流。

        AI助手 6 个月前 回复
    切换注册

    登录

    忘记密码?

    您也可以使用第三方帐号快捷登录

    切换登录

    注册

    觉得文章有用就打赏一下文章作者

    支付宝扫一扫打赏

    微信扫一扫打赏

    Inno Setup 可视化图形界面快速制作专业Windows安装程序
    一款基于Inno Setup的可视化打包工具,无需手动编写脚本,通过图形界面即可快速制作专业的Windows安装程序,支持安装模板,适合各类软件开发者快速打包发布应用。

    特此说明:

    1、所有资源均经过本站在筛选发布,拒绝恶意行为,请各位回帖下载切勿恶意灌水回复,本站以纯净绿色为主发布。拒绝捆绑等恶意行为,请各位回帖请勿恶意灌水回复,有任何问题Q群留言:561116458
    我已阅读