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

TOP

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

回复 40# HOPE2021


    1.0.0019 上半部分
  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. exit
  200. :VisualSet
  201. @echo off
  202. echo X=%~2>>VisualSet.vbs
  203. echo wscript.echo(X)>>VisualSet.vbs
  204. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  205. if exist VisualSet.vbs del VisualSet.vbs
  206. goto :eof
  207. :Echo_Debugging
  208. mode con cols=68 lines=34
  209. cls
  210. echo.
  211. echo.  Hope计时器[调试程序]
  212. set /p Str=--------------------------------------------------------------------<nul
  213. echo.
  214. echo.
  215. @goto :eof
  216. :Task
  217. mode con cols=68 lines=34
  218. Md Tasks >nul 2>nul
  219. cls
  220. title Hope计时器[计划程序]
  221. set Error=0
  222. echo.
  223. echo.  Hope计时器[计划程序]
  224. set /p Str=--------------------------------------------------------------------<nul
  225. echo.
  226. echo.
  227. echo.    ^>^> Q 新建计划   W 使用计划   D 删除计划   E 返回菜单   R 退出
  228. if not exist Tasks\*.Htd (
  229. echo.
  230. echo.    ^>^> 当前没有计划
  231. set /p Str=--------------------------------------------------------------------<nul
  232. echo.
  233. echo.
  234. )
  235. if not exist Tasks\Htd.Hdat echo.10000 > Tasks\Htd.Hdat
  236. if exist Tasks\*.Htd (
  237. cd Tasks
  238. echo.
  239. echo.    ^>^> 当前计划列表
  240. set /p Str=--------------------------------------------------------------------<nul
  241. echo.
  242. echo.
  243. for /f %%i in ('dir /b *.Htd') do (
  244. for /f "skip=5" %%j in (%%~ni.Htd) do echo.    ^>^> 编号:%%~ni  备注:%%j
  245. )
  246. echo.
  247. cd..
  248. )
  249. )
  250. call :get_key
  251. if /i "!key!"=="E" (
  252. @goto :Main
  253. )
  254. if /i "!key!"=="D" (
  255. @goto :Del
  256. )
  257. if /i "!key!"=="R" (
  258. del sleep.com sleep.exe sleep.vbs
  259. exit
  260. )
  261. if /i "!key!"=="Q" (
  262. @goto :New
  263. )
  264. if /i "!key!"=="W" (
  265. @goto :Open
  266. )
  267. if /i "!valid_key!" equ "0" @goto :Task
  268. :Open
  269. if exist Tasks\*.Htd (
  270. set "Content= "
  271. set /p Content=    ^>^> 请输入计划编号:
  272. goto Open_2
  273. ) else cd..&@goto :Task
  274. :Del
  275. if exist Tasks\*.Htd (
  276. set "Content= "
  277. set /p Content=    ^>^> 请输入计划编号:
  278. goto Del_2
  279. ) else cd..&@goto :Task
  280. :Del_2
  281. cd Tasks
  282. if exist %Content%.Htd (
  283. del %Content%.Htd
  284. cd..
  285. goto Task
  286. ) else cd..&goto Task
  287. :Open_2
  288. cd Tasks
  289. if exist %Content%.Htd (
  290. call :Read %Content%
  291. cd..
  292. mode con cols=68 lines=5
  293. @goto :Start
  294. ) else cd..&goto Task
  295. :New
  296. cd Tasks
  297. < Htd.Hdat (
  298. set /p Num=
  299. )
  300. set /a Num+=1
  301. echo.%Num% > Htd.Hdat
  302. cd..
  303. echo.
  304. echo.    ^>^> 新建计划:%Num%
  305. echo.
  306. set "Content=时间到!!!"
  307. set /p Content=    ^>^> 备注:
  308. echo.
  309. set "Content=%Content:>=^>%"
  310. set "Content=%Content:<=^<%"
  311. set "Content=%Content:|=^|%"
  312. set "Title= "
  313. set /p Title=    ^>^> 到时提醒:
  314. echo.
  315. set "Title=%Title:>=^^^>%"
  316. set "Title=%Title:<=^^^<%"
  317. set "Title=%Title:|=^^^|%"
  318. set H=0
  319. set Min=0
  320. set S=0
  321. set H_2=0
  322. set Min_2=0
  323. set S_2=0
  324. set Ms=0
  325. set Ms_2=0
  326. call :Vbs_Sleep 1000
  327. @goto :New_2
  328. :Read
  329. < %1.Htd (
  330. set /p H=
  331. set /p Min=
  332. set /p S=
  333. set /p Ms_2=
  334. set /p Title=
  335. set /p Content=
  336. )
  337. @goto :eof
复制代码
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 46# HOPE2021


    1.0.0019 下半部分
  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
复制代码
1

评分人数

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

TOP

回复 46# HOPE2021


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

TOP

回复 49# cmd1152
当然

TOP

回复 46# HOPE2021


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

TOP

回复 50# HOPE2021


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

TOP

回复 51# cmd1152
仅用于对称

TOP

提醒:要先del才能Rd

TOP

回复 53# HOPE2021


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

TOP

回复 55# cmd1152
也可以

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

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 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.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

返回列表