level 1
贴吧用户_7QJ4S8G
楼主
@璐村惂鐢ㄦ埛_000076K馃惥 off
title 定时锁屏
::===============================================================================
::================================软件设置区=====================================
:================================================================================
set hideform=False
::这里设置是否隐藏bat窗口,如果是请将"set hideform=False"改成"set hideform=True"即可.(建议不要立即就改,因为待会你要看看效果呢~)
set "message=请输入多少秒后自动锁屏(一分钟就输入60,一小时就输入3600,默认5秒后执行)"
::对话框中要显示的内容
set "title=时间设置"
::对话框的标题
set "note=5"
::输入框中的内容注释[这里一般为空(set "note="),这是个测试,所以弄上了点字符.]
:===============================================================================
:===============================================================================
if /i "%hideform%"=="True" (
if "%1"=="h" goto begin
mshta vbscript:createobject^("wscript.shell"^).run^("%~nx0 h",0^)^(window.close^)&&exit
)
:begin
set "vbs=%Temp%\GotUserInputedDataProgram.vbs"
set "data=%Temp%\UserInputedData.tmp"
set "msg1=%Temp%\msg1.vbs"
::====================================
::=========开始预置对话框=============
::====================================
if exist "%vbs%" del /s /q /f "%vbs%">nul
::delete file
echo msgbox "请输入数字">>"%msg1%"
echo On Error Resume Next>>"%vbs%"
echo Dim fso,wri,data,file>>"%vbs%"
echo Set fso=Wscript.CreateObject^("Scripting.FileSystemObject"^)>>"%vbs%"
echo file="%data%">>"%vbs%"
echo if fso.FileExists^(file^) Then fso.DeleteFile^(file^)>>"%vbs%"
echo Set wri=fso.CreateTextFile^(file,True^)>>"%vbs%"
echo data=InputBox^("%message%","%title%","%note%"^)>>"%vbs%"
echo wri.Write data>>"%vbs%"
echo wri.Close>>"%vbs%"
echo Set fso=Nothing>>"%vbs%"
echo Set op=Nothing>>"%vbs%"
echo fso.DeleteFile^(Wscript.ScriptFullName^)>>"%vbs%"
echo Wscript.Quit>>"%vbs%"
::Write down visual basic script file to temp folder.Let it put user inputed data bring here.
:goto1
call "%vbs%"
for /f "delims=" %%i in (%data%) do set "content=%%i"
echo %content%|FINDSTR /BE "[0-9]*">nul||call "%msg1%"&&GOTO goto1
if exist "%msg1%" del /s /q /f "%msg1%">nul
if exist "%vbs%" del /s /q /f "%data%">nul
if exist "%vbs%" del /s /q /f "%vbs%">nul
::执行代码
for /l %%i in (%content%,-1,0) do (
ping /n 2 127.1 >nul
cls
echo %%i秒钟后自动锁屏
)
::锁屏
pause
start %Windir%\System32\rundll32.exe user32.dll,LockWorkStation
::==============================================================================
::==============================================================================
2022年12月23日 08点12分
1
title 定时锁屏
::===============================================================================
::================================软件设置区=====================================
:================================================================================
set hideform=False
::这里设置是否隐藏bat窗口,如果是请将"set hideform=False"改成"set hideform=True"即可.(建议不要立即就改,因为待会你要看看效果呢~)
set "message=请输入多少秒后自动锁屏(一分钟就输入60,一小时就输入3600,默认5秒后执行)"
::对话框中要显示的内容
set "title=时间设置"
::对话框的标题
set "note=5"
::输入框中的内容注释[这里一般为空(set "note="),这是个测试,所以弄上了点字符.]
:===============================================================================
:===============================================================================
if /i "%hideform%"=="True" (
if "%1"=="h" goto begin
mshta vbscript:createobject^("wscript.shell"^).run^("%~nx0 h",0^)^(window.close^)&&exit
)
:begin
set "vbs=%Temp%\GotUserInputedDataProgram.vbs"
set "data=%Temp%\UserInputedData.tmp"
set "msg1=%Temp%\msg1.vbs"
::====================================
::=========开始预置对话框=============
::====================================
if exist "%vbs%" del /s /q /f "%vbs%">nul
::delete file
echo msgbox "请输入数字">>"%msg1%"
echo On Error Resume Next>>"%vbs%"
echo Dim fso,wri,data,file>>"%vbs%"
echo Set fso=Wscript.CreateObject^("Scripting.FileSystemObject"^)>>"%vbs%"
echo file="%data%">>"%vbs%"
echo if fso.FileExists^(file^) Then fso.DeleteFile^(file^)>>"%vbs%"
echo Set wri=fso.CreateTextFile^(file,True^)>>"%vbs%"
echo data=InputBox^("%message%","%title%","%note%"^)>>"%vbs%"
echo wri.Write data>>"%vbs%"
echo wri.Close>>"%vbs%"
echo Set fso=Nothing>>"%vbs%"
echo Set op=Nothing>>"%vbs%"
echo fso.DeleteFile^(Wscript.ScriptFullName^)>>"%vbs%"
echo Wscript.Quit>>"%vbs%"
::Write down visual basic script file to temp folder.Let it put user inputed data bring here.
:goto1
call "%vbs%"
for /f "delims=" %%i in (%data%) do set "content=%%i"
echo %content%|FINDSTR /BE "[0-9]*">nul||call "%msg1%"&&GOTO goto1
if exist "%msg1%" del /s /q /f "%msg1%">nul
if exist "%vbs%" del /s /q /f "%data%">nul
if exist "%vbs%" del /s /q /f "%vbs%">nul
::执行代码
for /l %%i in (%content%,-1,0) do (
ping /n 2 127.1 >nul
cls
echo %%i秒钟后自动锁屏
)
::锁屏
pause
start %Windir%\System32\rundll32.exe user32.dll,LockWorkStation
::==============================================================================
::==============================================================================