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

1.0.0023  下半部分
  1. :VisualSet
  2. @echo off
  3. echo X=%~2>>VisualSet.vbs
  4. echo wscript.echo(X)>>VisualSet.vbs
  5. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  6. if exist VisualSet.vbs del VisualSet.vbs
  7. goto :eof
  8. :Echo_Debugging
  9. mode con cols=68 lines=34
  10. cls
  11. echo.
  12. echo.  Hope计时器[调试程序]
  13. set /p Str=--------------------------------------------------------------------<nul
  14. echo.
  15. echo.
  16. @goto :eof
  17. :Task
  18. mode con cols=68 lines=34
  19. Md Tasks >nul 2>nul
  20. cls
  21. title Hope计时器[计划程序]
  22. set Error=0
  23. echo.
  24. echo.  Hope计时器[计划程序]
  25. set /p Str=--------------------------------------------------------------------<nul
  26. echo.
  27. echo.
  28. echo.    ^>^> Q 新建计划   W 使用计划   D 删除计划   E 返回菜单   R 退出
  29. if not exist Tasks\*.Htd (
  30. echo.
  31. echo.    ^>^> 当前没有计划
  32. set /p Str=--------------------------------------------------------------------<nul
  33. echo.
  34. echo.
  35. )
  36. if not exist Tasks\Htd.Hdat echo.10000 > Tasks\Htd.Hdat
  37. if exist Tasks\*.Htd (
  38. cd Tasks
  39. echo.
  40. echo.    ^>^> 当前计划列表
  41. set /p Str=--------------------------------------------------------------------<nul
  42. echo.
  43. echo.
  44. for /f %%i in ('dir /b *.Htd') do (
  45. for /f "skip=5" %%j in (%%~ni.Htd) do echo.    ^>^> 编号:%%~ni  备注:%%j
  46. )
  47. echo.
  48. cd..
  49. )
  50. )
  51. call :get_key
  52. if /i "!key!"=="E" (
  53. @goto :Main
  54. )
  55. if /i "!key!"=="D" (
  56. @goto :Del
  57. )
  58. if /i "!key!"=="R" (
  59. del sleep.com sleep.exe sleep.vbs
  60. exit
  61. )
  62. if /i "!key!"=="Q" (
  63. @goto :New
  64. )
  65. if /i "!key!"=="W" (
  66. @goto :Open
  67. )
  68. if /i "!valid_key!" equ "0" @goto :Task
  69. :Open
  70. if exist Tasks\*.Htd (
  71. set "Content= "
  72. set /p Content=    ^>^> 请输入计划编号:
  73. goto Open_2
  74. ) else cd..&@goto :Task
  75. :Del
  76. if exist Tasks\*.Htd (
  77. set "Content= "
  78. set /p Content=    ^>^> 请输入计划编号:
  79. goto Del_2
  80. ) else cd..&@goto :Task
  81. :Del_2
  82. cd Tasks
  83. if exist %Content%.Htd (
  84. del %Content%.Htd
  85. cd..
  86. goto Task
  87. ) else cd..&goto Task
  88. :Open_2
  89. cd Tasks
  90. if exist %Content%.Htd (
  91. call :Read %Content%
  92. cd..
  93. mode con cols=68 lines=5
  94. @goto :Start
  95. ) else cd..&goto Task
  96. :New
  97. cd Tasks
  98. < Htd.Hdat (
  99. set /p Num=
  100. )
  101. set /a Num+=1
  102. echo.%Num% > Htd.Hdat
  103. cd..
  104. echo.
  105. echo.    ^>^> 新建计划:%Num%
  106. echo.
  107. set "Content=时间到!!!"
  108. set /p Content=    ^>^> 备注:
  109. echo.
  110. set "Content=%Content:>=^>%"
  111. set "Content=%Content:<=^<%"
  112. set "Content=%Content:|=^|%"
  113. set "Title= "
  114. set /p Title=    ^>^> 到时提醒:
  115. echo.
  116. set "Title=%Title:>=^^^>%"
  117. set "Title=%Title:<=^^^<%"
  118. set "Title=%Title:|=^^^|%"
  119. set H=0
  120. set Min=0
  121. set S=0
  122. set H_2=0
  123. set Min_2=0
  124. set S_2=0
  125. set Ms=0
  126. set Ms_2=0
  127. call :Vbs_Sleep 1000
  128. @goto :New_2
  129. :Read
  130. < %1.Htd (
  131. set /p H=
  132. set /p Min=
  133. set /p S=
  134. set /p Ms_2=
  135. set /p Title=
  136. set /p Content=
  137. )
  138. @goto :eof
  139. :New_2
  140. cls
  141. echo.
  142. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  143. echo.
  144. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U 完成计划
  145. echo.
  146. call :get_key
  147. call :Settings_Time
  148. if /i "!key!"=="U" (
  149. (
  150. echo.%H%
  151. echo.%Min%
  152. echo.%S%
  153. echo.%Ms_2%
  154. echo.%Title%
  155. echo.%Content%
  156. ) > Tasks\%Num%.Htd
  157. @goto :Task
  158. )
  159. if /i "!valid_key!" equ "0" @goto :New_2
  160. :Error
  161. color 1f
  162. cls
  163. echo.
  164. echo.    ^>^> Sleep.exe 和 Sleep.com 不知到何处去了...
  165. echo.
  166. echo.    ^>^> 正在帮您恢复
  167. call :Sleep_Installs
  168. goto :Restart
  169. :Start
  170. set Error=0
  171. cls
  172. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  173. echo.
  174. echo.    ^>^> %H_2%小时%Min_2%分钟%S_2%秒%Ms%毫秒/%H%小时%Min%分钟%S%秒
  175. echo.
  176. echo.    ^>^> Ctrl+C暂停或退出...
  177. call :Sleep %Time%
  178. if %Error%==1 goto :Error
  179. set /a Ms+=100
  180. if %Ms%==1000 set /a S_2+=1&set Ms=0
  181. if %S_2% Geq 60 set /a Min_2+=1&set S_2=0
  182. if %Min_2% Geq 60 set /a H_2+=1&set Min_2=0
  183. if %H_2% Geq %H% if %Min_2% Geq %Min% if %S_2% Geq %S% goto :End
  184. if /i "!valid_key!" equ "0" goto :Start
  185. :End
  186. cls
  187. color 4e
  188. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  189. Call :Msg "%Title%" vbExclamation "Hope计时器"
  190. color 0f
  191. @call :Restart
  192. @goto :Main
  193. :Vbs_Sleep
  194. echo.Wscript.Sleep %1 > Sleep.vbs
  195. call Sleep.vbs > nul
  196. if exist ReturnKey.vbs del ReturnKey.vbs
  197. @goto :eof
  198. :Sleep_Installs
  199. color 0f
  200. (
  201. echo.-----BEGIN CERTIFICATE-----
  202. echo.TVpQAQEAAAAEAAAA//8AAFABAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  203. echo.AAAAAAAAAAAAAAAAkAAAAPy+gQAPtkz/ZjHSZjHASXggrCwwchQ8CXcQZmvSCmYB
  204. echo.wi7HBi8AMQDr5C7/Ji8ADgBmadLoAwAAZonRZsHpELSGzRW4AEzNIQAAAAAAAAAA
  205. echo.UEUAAEwBAQBQeaU2AAAAAAAAAADgAA8BCwEFDAACAAAAAAAAAAAAAH4QAAAAEAAA
  206. echo.ACAAAAAAQAAAEAAAAAIAAAQAAAAAAAAABAAAAAAAAAAAIAAAAAIAAAAAAAADAAAA
  207. echo.AAAQAAAQAAAAABAAABAAAAAAAAAQAAAAAAAAAAAAAAAQEAAAKAAAAAAAAAAAAAAA
  208. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  209. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAA
  210. echo.AAAAAAAAAAAudGV4dAAAANwAAAAAEAAAAAIAAAACAAAAAAAAAAAAAAAAAAAgAADg
  211. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  212. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWEAAAZBAAAHYQAAAAAAAA
  213. echo.RhAAAAAAAAAAAAAAOBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEtFUk5FTDMy
  214. echo.LmRsbAAAVhAAAGQQAAB2EAAAAAAAAAAARXhpdFByb2Nlc3MAAABHZXRDb21tYW5k
  215. echo.TGluZUEAAABTbGVlcAD/FQQQQAAx0khAgDgAdBGAOCJ1AvfSCdJ174A4IHXqQPyJ
  216. echo.xjHSMcCsCMB0IywwchU8CXcRa9IKAcLHBckQQADNEEAA6+L/JckQQAClEEAAUv8V
  217. echo.CBBAAGoA/xUAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  218. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  219. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  220. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  221. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  222. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  223. echo.AAAAAAAAAAAAAAAAAAAAAA==
  224. echo.-----END CERTIFICATE-----
  225. ) > Sleep.com
  226. Certutil -Decode Sleep.com Sleep.exe > nul
  227. Certutil -Decode -f Sleep.com Sleep.com > nul
  228. goto :eof
  229. :Sleep
  230. set Error=0
  231. if exist Sleep.exe (
  232. Sleep.exe %1
  233. goto :eof
  234. )
  235. if not exist Sleep.exe if exist Sleep.com (
  236. Sleep.com %1
  237. goto :eof
  238. )
  239. if not exist Sleep.exe if not exist Sleep.com (
  240. set Error=1
  241. goto :eof
  242. )
  243. :get_key
  244. rem 用法:call :get_key
  245. set "key="
  246.   for /f "delims=" %%a in ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined key set "key=%%a"
  247.   set "key=%key:~-1%"
  248.   set "valid_key=0"
  249. goto :eof
  250. :Msg
  251. Rem 用法: Call :Msg "Text" [buttons] "Title"
  252. echo.Msg=msgbox("%~1",%2,"%~3") > ReturnKey.vbs
  253. Call ReturnKey.vbs > nul
  254. if exist ReturnKey.vbs del ReturnKey.vbs
  255. goto :eof
  256. :Settings_Time
  257. if %Ms_2% Leq 200000000 if %H% geq 0 if %Min% Geq 0 if %S% Geq 0 (
  258. if /i "!key!"=="q" (
  259. set /a Ms_2+=3600000
  260. set /a H+=1
  261. )
  262. if /i "!key!"=="w" (
  263. set /a Ms_2-=3600000
  264. set /a H-=1
  265. )
  266. if /i "!key!"=="e" (
  267. set /a Ms_2+=60000
  268. set /a Min+=1
  269. )
  270. if /i "!key!"=="r" (
  271. set /a Ms_2-=60000
  272. set /a Min-=1
  273. )
  274. if /i "!key!"=="t" (
  275. set /a Ms_2+=1000
  276. set /a S+=1
  277. )
  278. if /i "!key!"=="y" (
  279. set /a Ms_2-=1000
  280. set /a S-=1
  281. )
  282. )
  283. if %S% Lss 0 (
  284. if %Min% Geq 0 if %H% Geq 0 (
  285. set /a Min-=1&set /a S+=60
  286. )
  287. if %Min% Leq 0 if %H% Leq 0 (
  288. echo.
  289. echo.    ^>^> 算数错误!
  290. call :Vbs_Sleep 100
  291. @call :Restart
  292. )
  293. )
  294. if %Min% Lss 0 (
  295. if %H% Gtr 0 set /a H-=1&set /a Min+=60
  296. if %H% Leq 0 (
  297. echo.
  298. echo.    ^>^> 算数错误!
  299. call :Vbs_Sleep 100
  300. @call :Restart
  301. )
  302. )
  303. if %H% Lss 0 (
  304. echo.
  305. echo.    ^>^> 算数错误!
  306. call :Vbs_Sleep 100
  307. @call :Restart
  308. )
  309. if %Ms_2% Gtr 200000000 (
  310. echo.
  311. echo.    ^>^> 算数错误!
  312. call :Vbs_Sleep 100
  313. @call :Restart
  314. )
  315. if %S% Geq 60 set /a Min+=1&set S=0
  316. if %Min% Geq 60 set /a H+=1&set Min=0
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

本帖最后由 cmd1152 于 2021-8-13 15:08 编辑

回复 61# HOPE2021


    1.0.00231.0.0022不见了,1.0.0022版本是更改开始动画的,1.0.0023增加一个功能  这个是上半部分
  1. @echo off&goto :tp
  2. 版权声明:
  3. 本程序是由HOPE2021和cmd1152共同制作
  4. 未经同意,禁止转载!
  5. :tp
  6. if not exist Logs\Time.ini set Time=100
  7. if exist Logs\Time.ini (
  8. cd Logs
  9. < Time.ini (
  10. set /p Time=
  11. )
  12. cd..
  13. )
  14. mode con cols=68 lines=5
  15. color f9
  16. endlocal
  17. setlocal enabledelayedexpansion
  18. chcp 936 > nul
  19. Rem By Hope2021
  20. title Hope计时器
  21. for /l %%i in (1,1,3) do (
  22. cls
  23. echo.
  24. echo.
  25. echo.                               -HOPE-
  26. ping/n 1 127.1>nul
  27. cls
  28. echo.
  29. echo.
  30. echo.                               \HOPE\
  31. ping/n 1 127.1>nul
  32. cls
  33. echo.
  34. echo.
  35. echo.                               ^|HOPE^|
  36. ping/n 1 127.1>nul
  37. cls
  38. echo.
  39. echo.
  40. echo.                               /HOPE/
  41. ping/n 1 127.1>nul
  42. )
  43. cls
  44. echo.
  45. echo.                                /    /
  46. echo.                               /HOPE/
  47. echo.                              /    /
  48. ping/n 1 127.1>nul
  49. cls
  50. echo.
  51. echo.                                /-  -/
  52. echo.                               /HOPE/
  53. echo.                              /-  -/
  54. ping/n 1 127.1>nul
  55. cls
  56. echo.
  57. echo.                                /----/
  58. echo.                               /HOPE/
  59. echo.                              /----/
  60. ping/n 1 127.1>nul
  61. cls
  62. echo.
  63. echo.                                ------
  64. echo.                               /HOPE/
  65. echo.                              ------
  66. ping/n 1 127.1>nul
  67. cls
  68. echo.
  69. echo.                               --------
  70. echo.                               -HOPE-
  71. echo.                             --------
  72. ping/n 1 127.1>nul
  73. cls
  74. echo.
  75. echo.                              ---------
  76. echo.                              --HOPE--
  77. echo.                             ---------
  78. ping/n 1 127.1>nul
  79. for /l %%i in (1,1,3) do (
  80. cls
  81. echo.
  82. echo.                             ----------
  83. echo.                             ---HOPE---
  84. echo.                             ----------
  85. ping/n 1 127.1>nul
  86. cls
  87. echo.
  88. echo.                             - --------
  89. echo.                              --HOPE---
  90. echo.                             ----------
  91. ping/n 1 127.1>nul
  92. cls
  93. echo.
  94. echo.                             --- ------
  95. echo.                             -- HOPE---
  96. echo.                             - --------
  97. ping/n 1 127.1>nul
  98. cls
  99. echo.
  100. echo.                             ----- ----
  101. echo.                             ---H PE---
  102. echo.                             --- ------
  103. ping/n 1 127.1>nul
  104. cls
  105. echo.
  106. echo.                             ------- --
  107. echo.                             ---HOP ---
  108. echo.                             ----- ----
  109. ping/n 1 127.1>nul
  110. cls
  111. echo.
  112. echo.                             ---------
  113. echo.                             ---HOPE- -
  114. echo.                             ------- --
  115. ping/n 1 127.1>nul
  116. cls
  117. echo.
  118. echo.                             ----------
  119. echo.                             ---HOPE---
  120. echo.                             ---------
  121. ping/n 1 127.1>nul
  122. cls
  123. echo.
  124. echo.                             ----------
  125. echo.                             ---HOPE---
  126. echo.                             ----------
  127. ping/n 1 127.1>nul
  128. )
  129. ping/n 1 127.1>nul
  130. cls
  131. call :Sleep_Installs
  132. @call :Restart
  133. @goto :Main
  134. :Restart
  135. color 0f
  136. cls
  137. set H=0
  138. set Min=0
  139. set S=0
  140. set H_2=0
  141. set Min_2=0
  142. set S_2=0
  143. set Ms=0
  144. set Ms_2=0
  145. @goto :eof
  146. :Main
  147. mode con cols=68 lines=9
  148. title Hope计时器
  149. set Error=0
  150. cls
  151. color 0f
  152. echo.
  153. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  154. echo.
  155. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U/I 开始计时/退出
  156. echo.
  157. echo.  P 打开计划程序  S 删除计划存储  X 调试        H 恢复到调试前
  158. echo.
  159. echo.  G 更改颜色
  160. call :get_key
  161. call :Settings_Time
  162. if /i "!key!"=="P" (
  163. set St_1=10001
  164. set En_1=10010
  165. @goto :Task
  166. )
  167. if /i "!key!"=="u" (
  168. mode con cols=68 lines=5
  169. set "Title=时间到!!!"
  170. @goto :Start
  171. )
  172. if /i "!key!"=="x" (
  173. mode con cols=68 lines=34
  174. @goto :Debugging
  175. )
  176. if /i "!key!"=="g" (
  177. cls
  178. mode con cols=64 lines=13
  179. echo.颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为
  180. echo.前景。每个数字可以为以下任何值之一:
  181. echo.
  182. echo.    0 = 黑色       8 = 灰色
  183. echo.    1 = 蓝色       9 = 淡蓝色
  184. echo.    2 = 绿色       A = 淡绿色
  185. echo.    3 = 浅绿色     B = 淡浅绿色
  186. echo.    4 = 红色       C = 淡红色
  187. echo.    5 = 紫色       D = 淡紫色
  188. echo.    6 = 黄色       E = 淡黄色
  189. echo.    7 = 白色       F = 亮白色
  190. set /p color=输入颜色码,例如0a^>
  191. color %color%
  192. goto :Main
  193. )
  194. if /i "!key!"=="h" (
  195. rd /s /q logs >nul 2>nul
  196. )
  197. if /i "!key!"=="s" (
  198. rd /s /q tasks >nul 2>nul
  199. )
  200. if /i "!key!"=="i" (
  201. del sleep.com sleep.exe sleep.vbs
  202. exit
  203. )
  204. if /i "!valid_key!" equ "0" goto :Main
  205. :Debugging
  206. echo.
  207. call :Echo_Debugging
  208. echo.    ^>^> 此向导将会帮助您调试您的设备是否适合运行 Hope (R) 计时器
  209. echo.
  210. echo.    ^>^> 请按回车键开始第一项检查...
  211. echo.
  212. pause > nul
  213. echo.
  214. call :Echo_Debugging
  215. echo.    ^>^> 正在调试 Certutil 性能...
  216. echo.
  217. echo.    ^>^> 请稍等...
  218. echo.
  219. echo.1 > ReturnKey.ini
  220. Certutil -encode ReturnKey.ini Hope.ini > nul
  221. if not exist Hope.ini (
  222. echo.    ^>^> 您的操作系统与 Certutil 不兼容, 无法运行Hope计时器...
  223. echo.
  224. echo.    ^>^> 请按回车键退出...
  225. pause > nul
  226. exit
  227. )
  228. if exist ReturnKey.ini del ReturnKey.ini
  229. if exist Hope.ini del Hope.ini
  230. echo.    ^>^> 您的操作系统与 Certutil 兼容, 可以运行Hope计时器...
  231. echo.
  232. echo.    ^>^> 请按回车键继续...
  233. pause > nul
  234. call :Echo_Debugging
  235. echo.    ^>^> 正在安装延时程序,请稍等...
  236. echo.
  237. call :Sleep_Installs
  238. echo.    ^>^> 接下来,您将会调试秒表, 我们将会为您进行系统标准计时...
  239. echo.
  240. echo.    ^>^> 我们会为你进行延时五秒,请您准备好您的计时设备...
  241. echo.
  242. echo.    ^>^> 请将您的计时设备置于您的电子计算机左侧, 打开计时设备但
  243. echo.
  244. echo.    ^>^> 不要开始计时, 请注意, 您按下回车键或空格键之后Hope计时
  245. echo.
  246. echo.    ^>^> 器将开始计时, 您应当同时启动Hope计时器与您的设备...
  247. echo.
  248. echo.    ^>^> 当Hope计时器的窗体变红时, 您应当停止您的计时设备, 按下
  249. echo.
  250. echo.    ^>^> 回车键, 并填写读数, Hope计时器会为您自动校准...
  251. pause > nul
  252. mode con cols=68 lines=5
  253. for /l %%i in (1,1,50) do (
  254. cls
  255. echo.
  256. echo.
  257. echo.    ^>^> %%i00 毫秒 / 5000 毫秒
  258. call :Sleep 100
  259. )
  260. color 4e
  261. cls
  262. echo.
  263. echo.
  264. echo.    ^>^> 请按回车键开始输入读数
  265. pause > nul
  266. cls
  267. echo.
  268. echo.
  269. set /p Math=    ^>^> 请输入读数:
  270. call :VisualSet Result 5/%Math%
  271. call :VisualSet Result 100*%Result%
  272. Md Logs >nul 2>nul
  273. echo.%Result% > Logs\Time.ini
  274. color 0f
  275. cls
  276. echo.
  277. echo.
  278. echo.    ^>^> 请按回车键重启本程序...
  279. pause > nul
  280. start %~0
  281. exit
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 61# HOPE2021


    OK
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 60# cmd1152
开源主义[建立在之时产权之上]
下午我没时间,大约4点我会推出新功能

TOP

1.0.0021下半部分
  1. :Read
  2. < %1.Htd (
  3. set /p H=
  4. set /p Min=
  5. set /p S=
  6. set /p Ms_2=
  7. set /p Title=
  8. set /p Content=
  9. )
  10. @goto :eof
  11. :New_2
  12. cls
  13. echo.
  14. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  15. echo.
  16. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U 完成计划
  17. echo.
  18. call :get_key
  19. call :Settings_Time
  20. if /i "!key!"=="U" (
  21. (
  22. echo.%H%
  23. echo.%Min%
  24. echo.%S%
  25. echo.%Ms_2%
  26. echo.%Title%
  27. echo.%Content%
  28. ) > Tasks\%Num%.Htd
  29. @goto :Task
  30. )
  31. if /i "!valid_key!" equ "0" @goto :New_2
  32. :Error
  33. color 1f
  34. cls
  35. echo.
  36. echo.    ^>^> Sleep.exe 和 Sleep.com 不知到何处去了...
  37. echo.
  38. echo.    ^>^> 正在帮您恢复
  39. call :Sleep_Installs
  40. goto :Restart
  41. :Start
  42. set Error=0
  43. cls
  44. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  45. echo.
  46. echo.    ^>^> %H_2%小时%Min_2%分钟%S_2%秒%Ms%毫秒/%H%小时%Min%分钟%S%秒
  47. echo.
  48. echo.    ^>^> Ctrl+C暂停或退出...
  49. call :Sleep %Time%
  50. if %Error%==1 goto :Error
  51. set /a Ms+=100
  52. if %Ms%==1000 set /a S_2+=1&set Ms=0
  53. if %S_2% Geq 60 set /a Min_2+=1&set S_2=0
  54. if %Min_2% Geq 60 set /a H_2+=1&set Min_2=0
  55. if %H_2% Geq %H% if %Min_2% Geq %Min% if %S_2% Geq %S% goto :End
  56. if /i "!valid_key!" equ "0" goto :Start
  57. :End
  58. cls
  59. color 4e
  60. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  61. Call :Msg "%Title%" vbExclamation "Hope计时器"
  62. color 0f
  63. @call :Restart
  64. @goto :Main
  65. :Vbs_Sleep
  66. echo.Wscript.Sleep %1 > Sleep.vbs
  67. call Sleep.vbs > nul
  68. if exist ReturnKey.vbs del ReturnKey.vbs
  69. @goto :eof
  70. :Sleep_Installs
  71. color 0f
  72. (
  73. echo.-----BEGIN CERTIFICATE-----
  74. echo.TVpQAQEAAAAEAAAA//8AAFABAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  75. echo.AAAAAAAAAAAAAAAAkAAAAPy+gQAPtkz/ZjHSZjHASXggrCwwchQ8CXcQZmvSCmYB
  76. echo.wi7HBi8AMQDr5C7/Ji8ADgBmadLoAwAAZonRZsHpELSGzRW4AEzNIQAAAAAAAAAA
  77. echo.UEUAAEwBAQBQeaU2AAAAAAAAAADgAA8BCwEFDAACAAAAAAAAAAAAAH4QAAAAEAAA
  78. echo.ACAAAAAAQAAAEAAAAAIAAAQAAAAAAAAABAAAAAAAAAAAIAAAAAIAAAAAAAADAAAA
  79. echo.AAAQAAAQAAAAABAAABAAAAAAAAAQAAAAAAAAAAAAAAAQEAAAKAAAAAAAAAAAAAAA
  80. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  81. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAA
  82. echo.AAAAAAAAAAAudGV4dAAAANwAAAAAEAAAAAIAAAACAAAAAAAAAAAAAAAAAAAgAADg
  83. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  84. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWEAAAZBAAAHYQAAAAAAAA
  85. echo.RhAAAAAAAAAAAAAAOBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEtFUk5FTDMy
  86. echo.LmRsbAAAVhAAAGQQAAB2EAAAAAAAAAAARXhpdFByb2Nlc3MAAABHZXRDb21tYW5k
  87. echo.TGluZUEAAABTbGVlcAD/FQQQQAAx0khAgDgAdBGAOCJ1AvfSCdJ174A4IHXqQPyJ
  88. echo.xjHSMcCsCMB0IywwchU8CXcRa9IKAcLHBckQQADNEEAA6+L/JckQQAClEEAAUv8V
  89. echo.CBBAAGoA/xUAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  90. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  91. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  92. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  93. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  94. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  95. echo.AAAAAAAAAAAAAAAAAAAAAA==
  96. echo.-----END CERTIFICATE-----
  97. ) > Sleep.com
  98. Certutil -Decode Sleep.com Sleep.exe > nul
  99. Certutil -Decode -f Sleep.com Sleep.com > nul
  100. goto :eof
  101. :Sleep
  102. set Error=0
  103. if exist Sleep.exe (
  104. Sleep.exe %1
  105. goto :eof
  106. )
  107. if not exist Sleep.exe if exist Sleep.com (
  108. Sleep.com %1
  109. goto :eof
  110. )
  111. if not exist Sleep.exe if not exist Sleep.com (
  112. set Error=1
  113. goto :eof
  114. )
  115. :get_key
  116. rem 用法:call :get_key
  117. set "key="
  118.   for /f "delims=" %%a in ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined key set "key=%%a"
  119.   set "key=%key:~-1%"
  120.   set "valid_key=0"
  121. goto :eof
  122. :Msg
  123. Rem 用法: Call :Msg "Text" [buttons] "Title"
  124. echo.Msg=msgbox("%~1",%2,"%~3") > ReturnKey.vbs
  125. Call ReturnKey.vbs > nul
  126. if exist ReturnKey.vbs del ReturnKey.vbs
  127. goto :eof
  128. :Settings_Time
  129. if %Ms_2% Leq 200000000 if %H% geq 0 if %Min% Geq 0 if %S% Geq 0 (
  130. if /i "!key!"=="q" (
  131. set /a Ms_2+=3600000
  132. set /a H+=1
  133. )
  134. if /i "!key!"=="w" (
  135. set /a Ms_2-=3600000
  136. set /a H-=1
  137. )
  138. if /i "!key!"=="e" (
  139. set /a Ms_2+=60000
  140. set /a Min+=1
  141. )
  142. if /i "!key!"=="r" (
  143. set /a Ms_2-=60000
  144. set /a Min-=1
  145. )
  146. if /i "!key!"=="t" (
  147. set /a Ms_2+=1000
  148. set /a S+=1
  149. )
  150. if /i "!key!"=="y" (
  151. set /a Ms_2-=1000
  152. set /a S-=1
  153. )
  154. )
  155. if %S% Lss 0 (
  156. if %Min% Geq 0 if %H% Geq 0 (
  157. set /a Min-=1&set /a S+=60
  158. )
  159. if %Min% Leq 0 if %H% Leq 0 (
  160. echo.
  161. echo.    ^>^> 算数错误!
  162. call :Vbs_Sleep 100
  163. @call :Restart
  164. )
  165. )
  166. if %Min% Lss 0 (
  167. if %H% Gtr 0 set /a H-=1&set /a Min+=60
  168. if %H% Leq 0 (
  169. echo.
  170. echo.    ^>^> 算数错误!
  171. call :Vbs_Sleep 100
  172. @call :Restart
  173. )
  174. )
  175. if %H% Lss 0 (
  176. echo.
  177. echo.    ^>^> 算数错误!
  178. call :Vbs_Sleep 100
  179. @call :Restart
  180. )
  181. if %Ms_2% Gtr 200000000 (
  182. echo.
  183. echo.    ^>^> 算数错误!
  184. call :Vbs_Sleep 100
  185. @call :Restart
  186. )
  187. if %S% Geq 60 set /a Min+=1&set S=0
  188. if %Min% Geq 60 set /a H+=1&set Min=0
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

本帖最后由 cmd1152 于 2021-8-13 14:47 编辑

回复 56# HOPE2021


    1.0.0021增加版权声明上半部分
  1. @echo off&goto :tp
  2. 版权声明:
  3. 本程序是由HOPE2021和cmd1152共同制作
  4. 未经同意,禁止转载!
  5. :tp
  6. if not exist Logs\Time.ini set Time=100
  7. if exist Logs\Time.ini (
  8. cd Logs
  9. < Time.ini (
  10. set /p Time=
  11. )
  12. cd..
  13. )
  14. mode con cols=68 lines=5
  15. color f9
  16. endlocal
  17. setlocal enabledelayedexpansion
  18. chcp 936 > nul
  19. Rem By Hope2021
  20. title Hope计时器
  21. for /l %%i in (1,1,3) do (
  22. cls
  23. echo.
  24. echo.
  25. echo.                               -HOPE-
  26. ping/n 1 127.1>nul
  27. cls
  28. echo.
  29. echo.
  30. echo.                               \HOPE\
  31. ping/n 1 127.1>nul
  32. cls
  33. echo.
  34. echo.
  35. echo.                               ^|HOPE^|
  36. ping/n 1 127.1>nul
  37. cls
  38. echo.
  39. echo.
  40. echo.                               /HOPE/
  41. ping/n 1 127.1>nul
  42. )
  43. cls
  44. echo.
  45. echo.                                /    /
  46. echo.                               /HOPE/
  47. echo.                              /    /
  48. ping/n 1 127.1>nul
  49. cls
  50. echo.
  51. echo.                                /-  -/
  52. echo.                               /HOPE/
  53. echo.                              /-  -/
  54. ping/n 1 127.1>nul
  55. cls
  56. echo.
  57. echo.                                /----/
  58. echo.                               /HOPE/
  59. echo.                              /----/
  60. ping/n 1 127.1>nul
  61. ping/n 1 127.1>nul
  62. cls
  63. echo.
  64. echo.
  65. echo.
  66. echo.
  67. ping/n 1 127.1>nul
  68. ping/n 1 127.1>nul
  69. cls
  70. echo.
  71. echo.                                /----/
  72. echo.                               /HOPE/
  73. echo.                              /----/
  74. call :Vbs_Sleep 1000
  75. call :Sleep_Installs
  76. @call :Restart
  77. @goto :Main
  78. :Restart
  79. color 0f
  80. cls
  81. set H=0
  82. set Min=0
  83. set S=0
  84. set H_2=0
  85. set Min_2=0
  86. set S_2=0
  87. set Ms=0
  88. set Ms_2=0
  89. @goto :eof
  90. :Main
  91. mode con cols=68 lines=7
  92. title Hope计时器
  93. set Error=0
  94. cls
  95. echo.
  96. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  97. echo.
  98. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U/I 开始计时/退出
  99. echo.
  100. echo.  P 打开计划程序  S 删除计划存储  X 调试        H 恢复到调试前
  101. call :get_key
  102. call :Settings_Time
  103. if /i "!key!"=="P" (
  104. set St_1=10001
  105. set En_1=10010
  106. @goto :Task
  107. )
  108. if /i "!key!"=="u" (
  109. mode con cols=68 lines=5
  110. set "Title=时间到!!!"
  111. @goto :Start
  112. )
  113. if /i "!key!"=="x" (
  114. mode con cols=68 lines=34
  115. @goto :Debugging
  116. )
  117. if /i "!key!"=="h" (
  118. rd /s /q logs >nul 2>nul
  119. )
  120. if /i "!key!"=="s" (
  121. rd /s /q tasks >nul 2>nul
  122. )
  123. if /i "!key!"=="i" (
  124. del sleep.com sleep.exe sleep.vbs
  125. exit
  126. )
  127. if /i "!valid_key!" equ "0" goto :Main
  128. :Debugging
  129. echo.
  130. call :Echo_Debugging
  131. echo.    ^>^> 此向导将会帮助您调试您的设备是否适合运行 Hope (R) 计时器
  132. echo.
  133. echo.    ^>^> 请按回车键开始第一项检查...
  134. echo.
  135. pause > nul
  136. echo.
  137. call :Echo_Debugging
  138. echo.    ^>^> 正在调试 Certutil 性能...
  139. echo.
  140. echo.    ^>^> 请稍等...
  141. echo.
  142. echo.1 > ReturnKey.ini
  143. Certutil -encode ReturnKey.ini Hope.ini > nul
  144. if not exist Hope.ini (
  145. echo.    ^>^> 您的操作系统与 Certutil 不兼容, 无法运行Hope计时器...
  146. echo.
  147. echo.    ^>^> 请按回车键退出...
  148. pause > nul
  149. exit
  150. )
  151. if exist ReturnKey.ini del ReturnKey.ini
  152. if exist Hope.ini del Hope.ini
  153. echo.    ^>^> 您的操作系统与 Certutil 兼容, 可以运行Hope计时器...
  154. echo.
  155. echo.    ^>^> 请按回车键继续...
  156. pause > nul
  157. call :Echo_Debugging
  158. echo.    ^>^> 正在安装延时程序,请稍等...
  159. echo.
  160. call :Sleep_Installs
  161. echo.    ^>^> 接下来,您将会调试秒表, 我们将会为您进行系统标准计时...
  162. echo.
  163. echo.    ^>^> 我们会为你进行延时五秒,请您准备好您的计时设备...
  164. echo.
  165. echo.    ^>^> 请将您的计时设备置于您的电子计算机左侧, 打开计时设备但
  166. echo.
  167. echo.    ^>^> 不要开始计时, 请注意, 您按下回车键或空格键之后Hope计时
  168. echo.
  169. echo.    ^>^> 器将开始计时, 您应当同时启动Hope计时器与您的设备...
  170. echo.
  171. echo.    ^>^> 当Hope计时器的窗体变红时, 您应当停止您的计时设备, 按下
  172. echo.
  173. echo.    ^>^> 回车键, 并填写读数, Hope计时器会为您自动校准...
  174. pause > nul
  175. mode con cols=68 lines=5
  176. for /l %%i in (1,1,50) do (
  177. cls
  178. echo.
  179. echo.
  180. echo.    ^>^> %%i00 毫秒 / 5000 毫秒
  181. call :Sleep 100
  182. )
  183. color 4e
  184. cls
  185. echo.
  186. echo.
  187. echo.    ^>^> 请按回车键开始输入读数
  188. pause > nul
  189. cls
  190. echo.
  191. echo.
  192. set /p Math=    ^>^> 请输入读数:
  193. call :VisualSet Result 5/%Math%
  194. call :VisualSet Result 100*%Result%
  195. Md Logs >nul 2>nul
  196. echo.%Result% > Logs\Time.ini
  197. color 0f
  198. cls
  199. echo.
  200. echo.
  201. echo.    ^>^> 请按回车键重启本程序...
  202. pause > nul
  203. start %0
  204. exit
  205. :VisualSet
  206. @echo off
  207. echo X=%~2>>VisualSet.vbs
  208. echo wscript.echo(X)>>VisualSet.vbs
  209. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  210. if exist VisualSet.vbs del VisualSet.vbs
  211. goto :eof
  212. :Echo_Debugging
  213. mode con cols=68 lines=34
  214. cls
  215. echo.
  216. echo.  Hope计时器[调试程序]
  217. set /p Str=--------------------------------------------------------------------<nul
  218. echo.
  219. echo.
  220. @goto :eof
  221. :Task
  222. mode con cols=68 lines=34
  223. Md Tasks >nul 2>nul
  224. cls
  225. title Hope计时器[计划程序]
  226. set Error=0
  227. echo.
  228. echo.  Hope计时器[计划程序]
  229. set /p Str=--------------------------------------------------------------------<nul
  230. echo.
  231. echo.
  232. echo.    ^>^> Q 新建计划   W 使用计划   D 删除计划   E 返回菜单   R 退出
  233. if not exist Tasks\*.Htd (
  234. echo.
  235. echo.    ^>^> 当前没有计划
  236. set /p Str=--------------------------------------------------------------------<nul
  237. echo.
  238. echo.
  239. )
  240. if not exist Tasks\Htd.Hdat echo.10000 > Tasks\Htd.Hdat
  241. if exist Tasks\*.Htd (
  242. cd Tasks
  243. echo.
  244. echo.    ^>^> 当前计划列表
  245. set /p Str=--------------------------------------------------------------------<nul
  246. echo.
  247. echo.
  248. for /f %%i in ('dir /b *.Htd') do (
  249. for /f "skip=5" %%j in (%%~ni.Htd) do echo.    ^>^> 编号:%%~ni  备注:%%j
  250. )
  251. echo.
  252. cd..
  253. )
  254. )
  255. call :get_key
  256. if /i "!key!"=="E" (
  257. @goto :Main
  258. )
  259. if /i "!key!"=="D" (
  260. @goto :Del
  261. )
  262. if /i "!key!"=="R" (
  263. del sleep.com sleep.exe sleep.vbs
  264. exit
  265. )
  266. if /i "!key!"=="Q" (
  267. @goto :New
  268. )
  269. if /i "!key!"=="W" (
  270. @goto :Open
  271. )
  272. if /i "!valid_key!" equ "0" @goto :Task
  273. :Open
  274. if exist Tasks\*.Htd (
  275. set "Content= "
  276. set /p Content=    ^>^> 请输入计划编号:
  277. goto Open_2
  278. ) else cd..&@goto :Task
  279. :Del
  280. if exist Tasks\*.Htd (
  281. set "Content= "
  282. set /p Content=    ^>^> 请输入计划编号:
  283. goto Del_2
  284. ) else cd..&@goto :Task
  285. :Del_2
  286. cd Tasks
  287. if exist %Content%.Htd (
  288. del %Content%.Htd
  289. cd..
  290. goto Task
  291. ) else cd..&goto Task
  292. :Open_2
  293. cd Tasks
  294. if exist %Content%.Htd (
  295. call :Read %Content%
  296. cd..
  297. mode con cols=68 lines=5
  298. @goto :Start
  299. ) else cd..&goto Task
  300. :New
  301. cd Tasks
  302. < Htd.Hdat (
  303. set /p Num=
  304. )
  305. set /a Num+=1
  306. echo.%Num% > Htd.Hdat
  307. cd..
  308. echo.
  309. echo.    ^>^> 新建计划:%Num%
  310. echo.
  311. set "Content=时间到!!!"
  312. set /p Content=    ^>^> 备注:
  313. echo.
  314. set "Content=%Content:>=^>%"
  315. set "Content=%Content:<=^<%"
  316. set "Content=%Content:|=^|%"
  317. set "Title= "
  318. set /p Title=    ^>^> 到时提醒:
  319. echo.
  320. set "Title=%Title:>=^^^>%"
  321. set "Title=%Title:<=^^^<%"
  322. set "Title=%Title:|=^^^|%"
  323. set H=0
  324. set Min=0
  325. set S=0
  326. set H_2=0
  327. set Min_2=0
  328. set S_2=0
  329. set Ms=0
  330. set Ms_2=0
  331. call :Vbs_Sleep 1000
  332. @goto :New_2
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

1.0.0020下半部分
  1. :New_2
  2. cls
  3. echo.
  4. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  5. echo.
  6. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U 完成计划
  7. echo.
  8. call :get_key
  9. call :Settings_Time
  10. if /i "!key!"=="U" (
  11. (
  12. echo.%H%
  13. echo.%Min%
  14. echo.%S%
  15. echo.%Ms_2%
  16. echo.%Title%
  17. echo.%Content%
  18. ) > Tasks\%Num%.Htd
  19. @goto :Task
  20. )
  21. if /i "!valid_key!" equ "0" @goto :New_2
  22. :Error
  23. color 1f
  24. cls
  25. echo.
  26. echo.    ^>^> Sleep.exe 和 Sleep.com 不知到何处去了...
  27. echo.
  28. echo.    ^>^> 正在帮您恢复
  29. call :Sleep_Installs
  30. goto :Restart
  31. :Start
  32. set Error=0
  33. cls
  34. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  35. echo.
  36. echo.    ^>^> %H_2%小时%Min_2%分钟%S_2%秒%Ms%毫秒/%H%小时%Min%分钟%S%秒
  37. echo.
  38. echo.    ^>^> Ctrl+C暂停或退出...
  39. call :Sleep %Time%
  40. if %Error%==1 goto :Error
  41. set /a Ms+=100
  42. if %Ms%==1000 set /a S_2+=1&set Ms=0
  43. if %S_2% Geq 60 set /a Min_2+=1&set S_2=0
  44. if %Min_2% Geq 60 set /a H_2+=1&set Min_2=0
  45. if %H_2% Geq %H% if %Min_2% Geq %Min% if %S_2% Geq %S% goto :End
  46. if /i "!valid_key!" equ "0" goto :Start
  47. :End
  48. cls
  49. color 4e
  50. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  51. Call :Msg "%Title%" vbExclamation "Hope计时器"
  52. color 0f
  53. @call :Restart
  54. @goto :Main
  55. :Vbs_Sleep
  56. echo.Wscript.Sleep %1 > Sleep.vbs
  57. call Sleep.vbs > nul
  58. if exist ReturnKey.vbs del ReturnKey.vbs
  59. @goto :eof
  60. :Sleep_Installs
  61. color 0f
  62. (
  63. echo.-----BEGIN CERTIFICATE-----
  64. echo.TVpQAQEAAAAEAAAA//8AAFABAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  65. echo.AAAAAAAAAAAAAAAAkAAAAPy+gQAPtkz/ZjHSZjHASXggrCwwchQ8CXcQZmvSCmYB
  66. echo.wi7HBi8AMQDr5C7/Ji8ADgBmadLoAwAAZonRZsHpELSGzRW4AEzNIQAAAAAAAAAA
  67. echo.UEUAAEwBAQBQeaU2AAAAAAAAAADgAA8BCwEFDAACAAAAAAAAAAAAAH4QAAAAEAAA
  68. echo.ACAAAAAAQAAAEAAAAAIAAAQAAAAAAAAABAAAAAAAAAAAIAAAAAIAAAAAAAADAAAA
  69. echo.AAAQAAAQAAAAABAAABAAAAAAAAAQAAAAAAAAAAAAAAAQEAAAKAAAAAAAAAAAAAAA
  70. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  71. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAA
  72. echo.AAAAAAAAAAAudGV4dAAAANwAAAAAEAAAAAIAAAACAAAAAAAAAAAAAAAAAAAgAADg
  73. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  74. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWEAAAZBAAAHYQAAAAAAAA
  75. echo.RhAAAAAAAAAAAAAAOBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEtFUk5FTDMy
  76. echo.LmRsbAAAVhAAAGQQAAB2EAAAAAAAAAAARXhpdFByb2Nlc3MAAABHZXRDb21tYW5k
  77. echo.TGluZUEAAABTbGVlcAD/FQQQQAAx0khAgDgAdBGAOCJ1AvfSCdJ174A4IHXqQPyJ
  78. echo.xjHSMcCsCMB0IywwchU8CXcRa9IKAcLHBckQQADNEEAA6+L/JckQQAClEEAAUv8V
  79. echo.CBBAAGoA/xUAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  80. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  81. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  82. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  83. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  84. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  85. echo.AAAAAAAAAAAAAAAAAAAAAA==
  86. echo.-----END CERTIFICATE-----
  87. ) > Sleep.com
  88. Certutil -Decode Sleep.com Sleep.exe > nul
  89. Certutil -Decode -f Sleep.com Sleep.com > nul
  90. goto :eof
  91. :Sleep
  92. set Error=0
  93. if exist Sleep.exe (
  94. Sleep.exe %1
  95. goto :eof
  96. )
  97. if not exist Sleep.exe if exist Sleep.com (
  98. Sleep.com %1
  99. goto :eof
  100. )
  101. if not exist Sleep.exe if not exist Sleep.com (
  102. set Error=1
  103. goto :eof
  104. )
  105. :get_key
  106. rem 用法:call :get_key
  107. set "key="
  108.   for /f "delims=" %%a in ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined key set "key=%%a"
  109.   set "key=%key:~-1%"
  110.   set "valid_key=0"
  111. goto :eof
  112. :Msg
  113. Rem 用法: Call :Msg "Text" [buttons] "Title"
  114. echo.Msg=msgbox("%~1",%2,"%~3") > ReturnKey.vbs
  115. Call ReturnKey.vbs > nul
  116. if exist ReturnKey.vbs del ReturnKey.vbs
  117. goto :eof
  118. :Settings_Time
  119. if %Ms_2% Leq 200000000 if %H% geq 0 if %Min% Geq 0 if %S% Geq 0 (
  120. if /i "!key!"=="q" (
  121. set /a Ms_2+=3600000
  122. set /a H+=1
  123. )
  124. if /i "!key!"=="w" (
  125. set /a Ms_2-=3600000
  126. set /a H-=1
  127. )
  128. if /i "!key!"=="e" (
  129. set /a Ms_2+=60000
  130. set /a Min+=1
  131. )
  132. if /i "!key!"=="r" (
  133. set /a Ms_2-=60000
  134. set /a Min-=1
  135. )
  136. if /i "!key!"=="t" (
  137. set /a Ms_2+=1000
  138. set /a S+=1
  139. )
  140. if /i "!key!"=="y" (
  141. set /a Ms_2-=1000
  142. set /a S-=1
  143. )
  144. )
  145. if %S% Lss 0 (
  146. if %Min% Geq 0 if %H% Geq 0 (
  147. set /a Min-=1&set /a S+=60
  148. )
  149. if %Min% Leq 0 if %H% Leq 0 (
  150. echo.
  151. echo.    ^>^> 算数错误!
  152. call :Vbs_Sleep 100
  153. @call :Restart
  154. )
  155. )
  156. if %Min% Lss 0 (
  157. if %H% Gtr 0 set /a H-=1&set /a Min+=60
  158. if %H% Leq 0 (
  159. echo.
  160. echo.    ^>^> 算数错误!
  161. call :Vbs_Sleep 100
  162. @call :Restart
  163. )
  164. )
  165. if %H% Lss 0 (
  166. echo.
  167. echo.    ^>^> 算数错误!
  168. call :Vbs_Sleep 100
  169. @call :Restart
  170. )
  171. if %Ms_2% Gtr 200000000 (
  172. echo.
  173. echo.    ^>^> 算数错误!
  174. call :Vbs_Sleep 100
  175. @call :Restart
  176. )
  177. if %S% Geq 60 set /a Min+=1&set S=0
  178. if %Min% Geq 60 set /a H+=1&set Min=0
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

本帖最后由 cmd1152 于 2021-8-13 15:09 编辑

回复 51# cmd1152


    1.0.0020 手动重启程序换成自动重启程序上半部分
  1. @echo off
  2. if not exist Logs\Time.ini set Time=100
  3. if exist Logs\Time.ini (
  4. cd Logs
  5. < Time.ini (
  6. set /p Time=
  7. )
  8. cd..
  9. )
  10. mode con cols=68 lines=5
  11. color f9
  12. endlocal
  13. setlocal enabledelayedexpansion
  14. chcp 936 > nul
  15. Rem By Hope2021
  16. title Hope计时器
  17. for /l %%i in (1,1,3) do (
  18. cls
  19. echo.
  20. echo.
  21. echo.                               -HOPE-
  22. ping/n 1 127.1>nul
  23. cls
  24. echo.
  25. echo.
  26. echo.                               \HOPE\
  27. ping/n 1 127.1>nul
  28. cls
  29. echo.
  30. echo.
  31. echo.                               ^|HOPE^|
  32. ping/n 1 127.1>nul
  33. cls
  34. echo.
  35. echo.
  36. echo.                               /HOPE/
  37. ping/n 1 127.1>nul
  38. )
  39. cls
  40. echo.
  41. echo.                                /    /
  42. echo.                               /HOPE/
  43. echo.                              /    /
  44. ping/n 1 127.1>nul
  45. cls
  46. echo.
  47. echo.                                /-  -/
  48. echo.                               /HOPE/
  49. echo.                              /-  -/
  50. ping/n 1 127.1>nul
  51. cls
  52. echo.
  53. echo.                                /----/
  54. echo.                               /HOPE/
  55. echo.                              /----/
  56. ping/n 1 127.1>nul
  57. ping/n 1 127.1>nul
  58. cls
  59. echo.
  60. echo.
  61. echo.
  62. echo.
  63. ping/n 1 127.1>nul
  64. ping/n 1 127.1>nul
  65. cls
  66. echo.
  67. echo.                                /----/
  68. echo.                               /HOPE/
  69. echo.                              /----/
  70. call :Vbs_Sleep 1000
  71. call :Sleep_Installs
  72. @call :Restart
  73. @goto :Main
  74. :Restart
  75. color 0f
  76. cls
  77. set H=0
  78. set Min=0
  79. set S=0
  80. set H_2=0
  81. set Min_2=0
  82. set S_2=0
  83. set Ms=0
  84. set Ms_2=0
  85. @goto :eof
  86. :Main
  87. mode con cols=68 lines=7
  88. title Hope计时器
  89. set Error=0
  90. cls
  91. echo.
  92. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  93. echo.
  94. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U/I 开始计时/退出
  95. echo.
  96. echo.  P 打开计划程序  S 删除计划存储  X 调试        H 恢复到调试前
  97. call :get_key
  98. call :Settings_Time
  99. if /i "!key!"=="P" (
  100. set St_1=10001
  101. set En_1=10010
  102. @goto :Task
  103. )
  104. if /i "!key!"=="u" (
  105. mode con cols=68 lines=5
  106. set "Title=时间到!!!"
  107. @goto :Start
  108. )
  109. if /i "!key!"=="x" (
  110. mode con cols=68 lines=34
  111. @goto :Debugging
  112. )
  113. if /i "!key!"=="h" (
  114. rd /s /q logs >nul 2>nul
  115. )
  116. if /i "!key!"=="s" (
  117. rd /s /q tasks >nul 2>nul
  118. )
  119. if /i "!key!"=="i" (
  120. del sleep.com sleep.exe sleep.vbs
  121. exit
  122. )
  123. if /i "!valid_key!" equ "0" goto :Main
  124. :Debugging
  125. echo.
  126. call :Echo_Debugging
  127. echo.    ^>^> 此向导将会帮助您调试您的设备是否适合运行 Hope (R) 计时器
  128. echo.
  129. echo.    ^>^> 请按回车键开始第一项检查...
  130. echo.
  131. pause > nul
  132. echo.
  133. call :Echo_Debugging
  134. echo.    ^>^> 正在调试 Certutil 性能...
  135. echo.
  136. echo.    ^>^> 请稍等...
  137. echo.
  138. echo.1 > ReturnKey.ini
  139. Certutil -encode ReturnKey.ini Hope.ini > nul
  140. if not exist Hope.ini (
  141. echo.    ^>^> 您的操作系统与 Certutil 不兼容, 无法运行Hope计时器...
  142. echo.
  143. echo.    ^>^> 请按回车键退出...
  144. pause > nul
  145. exit
  146. )
  147. if exist ReturnKey.ini del ReturnKey.ini
  148. if exist Hope.ini del Hope.ini
  149. echo.    ^>^> 您的操作系统与 Certutil 兼容, 可以运行Hope计时器...
  150. echo.
  151. echo.    ^>^> 请按回车键继续...
  152. pause > nul
  153. call :Echo_Debugging
  154. echo.    ^>^> 正在安装延时程序,请稍等...
  155. echo.
  156. call :Sleep_Installs
  157. echo.    ^>^> 接下来,您将会调试秒表, 我们将会为您进行系统标准计时...
  158. echo.
  159. echo.    ^>^> 我们会为你进行延时五秒,请您准备好您的计时设备...
  160. echo.
  161. echo.    ^>^> 请将您的计时设备置于您的电子计算机左侧, 打开计时设备但
  162. echo.
  163. echo.    ^>^> 不要开始计时, 请注意, 您按下回车键或空格键之后Hope计时
  164. echo.
  165. echo.    ^>^> 器将开始计时, 您应当同时启动Hope计时器与您的设备...
  166. echo.
  167. echo.    ^>^> 当Hope计时器的窗体变红时, 您应当停止您的计时设备, 按下
  168. echo.
  169. echo.    ^>^> 回车键, 并填写读数, Hope计时器会为您自动校准...
  170. pause > nul
  171. mode con cols=68 lines=5
  172. for /l %%i in (1,1,50) do (
  173. cls
  174. echo.
  175. echo.
  176. echo.    ^>^> %%i00 毫秒 / 5000 毫秒
  177. call :Sleep 100
  178. )
  179. color 4e
  180. cls
  181. echo.
  182. echo.
  183. echo.    ^>^> 请按回车键开始输入读数
  184. pause > nul
  185. cls
  186. echo.
  187. echo.
  188. set /p Math=    ^>^> 请输入读数:
  189. call :VisualSet Result 5/%Math%
  190. call :VisualSet Result 100*%Result%
  191. Md Logs >nul 2>nul
  192. echo.%Result% > Logs\Time.ini
  193. color 0f
  194. cls
  195. echo.
  196. echo.
  197. echo.    ^>^> 请按回车键重启本程序...
  198. pause > nul
  199. start %~0
  200. exit
  201. :VisualSet
  202. @echo off
  203. echo X=%~2>>VisualSet.vbs
  204. echo wscript.echo(X)>>VisualSet.vbs
  205. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  206. if exist VisualSet.vbs del VisualSet.vbs
  207. goto :eof
  208. :Echo_Debugging
  209. mode con cols=68 lines=34
  210. cls
  211. echo.
  212. echo.  Hope计时器[调试程序]
  213. set /p Str=--------------------------------------------------------------------<nul
  214. echo.
  215. echo.
  216. @goto :eof
  217. :Task
  218. mode con cols=68 lines=34
  219. Md Tasks >nul 2>nul
  220. cls
  221. title Hope计时器[计划程序]
  222. set Error=0
  223. echo.
  224. echo.  Hope计时器[计划程序]
  225. set /p Str=--------------------------------------------------------------------<nul
  226. echo.
  227. echo.
  228. echo.    ^>^> Q 新建计划   W 使用计划   D 删除计划   E 返回菜单   R 退出
  229. if not exist Tasks\*.Htd (
  230. echo.
  231. echo.    ^>^> 当前没有计划
  232. set /p Str=--------------------------------------------------------------------<nul
  233. echo.
  234. echo.
  235. )
  236. if not exist Tasks\Htd.Hdat echo.10000 > Tasks\Htd.Hdat
  237. if exist Tasks\*.Htd (
  238. cd Tasks
  239. echo.
  240. echo.    ^>^> 当前计划列表
  241. set /p Str=--------------------------------------------------------------------<nul
  242. echo.
  243. echo.
  244. for /f %%i in ('dir /b *.Htd') do (
  245. for /f "skip=5" %%j in (%%~ni.Htd) do echo.    ^>^> 编号:%%~ni  备注:%%j
  246. )
  247. echo.
  248. cd..
  249. )
  250. )
  251. call :get_key
  252. if /i "!key!"=="E" (
  253. @goto :Main
  254. )
  255. if /i "!key!"=="D" (
  256. @goto :Del
  257. )
  258. if /i "!key!"=="R" (
  259. del sleep.com sleep.exe sleep.vbs
  260. exit
  261. )
  262. if /i "!key!"=="Q" (
  263. @goto :New
  264. )
  265. if /i "!key!"=="W" (
  266. @goto :Open
  267. )
  268. if /i "!valid_key!" equ "0" @goto :Task
  269. :Open
  270. if exist Tasks\*.Htd (
  271. set "Content= "
  272. set /p Content=    ^>^> 请输入计划编号:
  273. goto Open_2
  274. ) else cd..&@goto :Task
  275. :Del
  276. if exist Tasks\*.Htd (
  277. set "Content= "
  278. set /p Content=    ^>^> 请输入计划编号:
  279. goto Del_2
  280. ) else cd..&@goto :Task
  281. :Del_2
  282. cd Tasks
  283. if exist %Content%.Htd (
  284. del %Content%.Htd
  285. cd..
  286. goto Task
  287. ) else cd..&goto Task
  288. :Open_2
  289. cd Tasks
  290. if exist %Content%.Htd (
  291. call :Read %Content%
  292. cd..
  293. mode con cols=68 lines=5
  294. @goto :Start
  295. ) else cd..&goto Task
  296. :New
  297. cd Tasks
  298. < Htd.Hdat (
  299. set /p Num=
  300. )
  301. set /a Num+=1
  302. echo.%Num% > Htd.Hdat
  303. cd..
  304. echo.
  305. echo.    ^>^> 新建计划:%Num%
  306. echo.
  307. set "Content=时间到!!!"
  308. set /p Content=    ^>^> 备注:
  309. echo.
  310. set "Content=%Content:>=^>%"
  311. set "Content=%Content:<=^<%"
  312. set "Content=%Content:|=^|%"
  313. set "Title= "
  314. set /p Title=    ^>^> 到时提醒:
  315. echo.
  316. set "Title=%Title:>=^^^>%"
  317. set "Title=%Title:<=^^^<%"
  318. set "Title=%Title:|=^^^|%"
  319. set H=0
  320. set Min=0
  321. set S=0
  322. set H_2=0
  323. set Min_2=0
  324. set S_2=0
  325. set Ms=0
  326. set Ms_2=0
  327. call :Vbs_Sleep 1000
  328. @goto :New_2
  329. :Read
  330. < %1.Htd (
  331. set /p H=
  332. set /p Min=
  333. set /p S=
  334. set /p Ms_2=
  335. set /p Title=
  336. set /p Content=
  337. )
  338. @goto :eof
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 55# cmd1152
也可以

TOP

回复 53# HOPE2021


    还是去掉吧,否则看着难受
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

提醒:要先del才能Rd

TOP

回复 51# cmd1152
仅用于对称

TOP

回复 50# HOPE2021


    太好了
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 46# HOPE2021


    开始计时//退出 为什么多了一个/
U/I 开始计时//退出
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 49# cmd1152
当然

TOP

返回列表