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

TOP

版本1.0.0016下半部分
  1. :Start
  2. set Error=0
  3. cls
  4. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  5. echo.
  6. echo.    ^>^> %H_2%小时%Min_2%分钟%S_2%秒%Ms%毫秒/%H%小时%Min%分钟%S%秒
  7. echo.
  8. echo.    ^>^> Ctrl+C暂停或退出...
  9. call :Sleep %Time%
  10. if %Error%==1 goto :Error
  11. set /a Ms+=100
  12. if %Ms%==1000 set /a S_2+=1&set Ms=0
  13. if %S_2% Geq 60 set /a Min_2+=1&set S_2=0
  14. if %Min_2% Geq 60 set /a H_2+=1&set Min_2=0
  15. if %H_2% Geq %H% if %Min_2% Geq %Min% if %S_2% Geq %S% goto :End
  16. if /i "!valid_key!" equ "0" goto :Start
  17. :End
  18. cls
  19. color 4e
  20. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  21. Call :Msg "%Title%" vbExclamation "Hope计时器"
  22. color 0f
  23. @call :Restart
  24. @goto :Main
  25. :Vbs_Sleep
  26. echo.Wscript.Sleep %1 > Sleep.vbs
  27. call Sleep.vbs > nul
  28. if exist ReturnKey.vbs del ReturnKey.vbs
  29. @goto :eof
  30. :Sleep_Installs
  31. color 0f
  32. (
  33. echo.-----BEGIN CERTIFICATE-----
  34. echo.TVpQAQEAAAAEAAAA//8AAFABAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  35. echo.AAAAAAAAAAAAAAAAkAAAAPy+gQAPtkz/ZjHSZjHASXggrCwwchQ8CXcQZmvSCmYB
  36. echo.wi7HBi8AMQDr5C7/Ji8ADgBmadLoAwAAZonRZsHpELSGzRW4AEzNIQAAAAAAAAAA
  37. echo.UEUAAEwBAQBQeaU2AAAAAAAAAADgAA8BCwEFDAACAAAAAAAAAAAAAH4QAAAAEAAA
  38. echo.ACAAAAAAQAAAEAAAAAIAAAQAAAAAAAAABAAAAAAAAAAAIAAAAAIAAAAAAAADAAAA
  39. echo.AAAQAAAQAAAAABAAABAAAAAAAAAQAAAAAAAAAAAAAAAQEAAAKAAAAAAAAAAAAAAA
  40. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  41. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAA
  42. echo.AAAAAAAAAAAudGV4dAAAANwAAAAAEAAAAAIAAAACAAAAAAAAAAAAAAAAAAAgAADg
  43. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  44. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWEAAAZBAAAHYQAAAAAAAA
  45. echo.RhAAAAAAAAAAAAAAOBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEtFUk5FTDMy
  46. echo.LmRsbAAAVhAAAGQQAAB2EAAAAAAAAAAARXhpdFByb2Nlc3MAAABHZXRDb21tYW5k
  47. echo.TGluZUEAAABTbGVlcAD/FQQQQAAx0khAgDgAdBGAOCJ1AvfSCdJ174A4IHXqQPyJ
  48. echo.xjHSMcCsCMB0IywwchU8CXcRa9IKAcLHBckQQADNEEAA6+L/JckQQAClEEAAUv8V
  49. echo.CBBAAGoA/xUAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  50. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  51. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  52. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  53. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  54. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  55. echo.AAAAAAAAAAAAAAAAAAAAAA==
  56. echo.-----END CERTIFICATE-----
  57. ) > Sleep.com
  58. Certutil -Decode Sleep.com Sleep.exe > nul
  59. Certutil -Decode -f Sleep.com Sleep.com > nul
  60. goto :eof
  61. :Sleep
  62. set Error=0
  63. if exist Sleep.exe (
  64. Sleep.exe %1
  65. goto :eof
  66. )
  67. if not exist Sleep.exe if exist Sleep.com (
  68. Sleep.com %1
  69. goto :eof
  70. )
  71. if not exist Sleep.exe if not exist Sleep.com (
  72. set Error=1
  73. goto :eof
  74. )
  75. :get_key
  76. rem 用法:call :get_key
  77. set "key="
  78.   for /f "delims=" %%a in ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined key set "key=%%a"
  79.   set "key=%key:~-1%"
  80.   set "valid_key=0"
  81. goto :eof
  82. :Msg
  83. Rem 用法: Call :Msg "Text" [buttons] "Title"
  84. echo.Msg=msgbox("%~1",%2,"%~3") > ReturnKey.vbs
  85. Call ReturnKey.vbs > nul
  86. if exist ReturnKey.vbs del ReturnKey.vbs
  87. goto :eof
  88. :Settings_Time
  89. if %Ms_2% Leq 200000000 if %H% geq 0 if %Min% Geq 0 if %S% Geq 0 (
  90. if /i "!key!"=="q" (
  91. set /a Ms_2+=3600000
  92. set /a H+=1
  93. )
  94. if /i "!key!"=="w" (
  95. set /a Ms_2-=3600000
  96. set /a H-=1
  97. )
  98. if /i "!key!"=="e" (
  99. set /a Ms_2+=60000
  100. set /a Min+=1
  101. )
  102. if /i "!key!"=="r" (
  103. set /a Ms_2-=60000
  104. set /a Min-=1
  105. )
  106. if /i "!key!"=="t" (
  107. set /a Ms_2+=1000
  108. set /a S+=1
  109. )
  110. if /i "!key!"=="y" (
  111. set /a Ms_2-=1000
  112. set /a S-=1
  113. )
  114. )
  115. if %S% Lss 0 (
  116. if %Min% Geq 0 if %H% Geq 0 (
  117. set /a Min-=1&set /a S+=60
  118. )
  119. if %Min% Leq 0 if %H% Leq 0 (
  120. echo.
  121. echo.    ^>^> 算数错误!
  122. call :Vbs_Sleep 100
  123. @call :Restart
  124. )
  125. )
  126. if %Min% Lss 0 (
  127. if %H% Gtr 0 set /a H-=1&set /a Min+=60
  128. if %H% Leq 0 (
  129. echo.
  130. echo.    ^>^> 算数错误!
  131. call :Vbs_Sleep 100
  132. @call :Restart
  133. )
  134. )
  135. if %H% Lss 0 (
  136. echo.
  137. echo.    ^>^> 算数错误!
  138. call :Vbs_Sleep 100
  139. @call :Restart
  140. )
  141. if %Ms_2% Gtr 200000000 (
  142. echo.
  143. echo.    ^>^> 算数错误!
  144. call :Vbs_Sleep 100
  145. @call :Restart
  146. )
  147. if %S% Geq 60 set /a Min+=1&set S=0
  148. if %Min% Geq 60 set /a H+=1&set Min=0
复制代码

TOP

回复 45# cmd1152
更新永无止境!

TOP

回复 49# cmd1152
当然

TOP

回复 51# cmd1152
仅用于对称

TOP

提醒:要先del才能Rd

TOP

回复 55# cmd1152
也可以

TOP

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

TOP

版本1.0.0024上半部分
  1. @echo off&goto :Begin
  2. ; Hope Timer [Version 1.0.0024]
  3. ; (C) Copyright 2020-2021 Hope Corp.
  4. ; (C) Copyright 2021-2021 Hope2021&Cmd1152 Corp.
  5. :Begin
  6. mode con cols=68 lines=5
  7. color f9
  8. endlocal
  9. setlocal enabledelayedexpansion
  10. chcp 936 > nul
  11. Rem By Hope2021
  12. title Hope计时器
  13. cls
  14. echo.
  15. echo.                                HOPE
  16. echo.
  17. call :Vbs_Sleep 1000
  18. call :Sleep_Installs
  19. if not exist Logs\Time.ini set Time=100
  20. if not exist Logs\Timer.ini set Timer=128
  21. if not exist Logs\Color.ini set Color=0f
  22. if exist Logs\Time.ini (
  23. cd Logs
  24. < Time.ini (
  25. set /p Time=
  26. )
  27. cd..
  28. )
  29. if exist Logs\Timer.ini (
  30. cd Logs
  31. < Timer.ini (
  32. set /p Timer=
  33. )
  34. cd..
  35. )
  36. if exist Logs\Color.ini (
  37. cd Logs
  38. < Color.ini (
  39. set /p Color=
  40. )
  41. cd..
  42. )
  43. call :23_Blank
  44. for %%i in (
  45. M a k e
  46. ) do (
  47. call :Type "%%i"
  48. )
  49. call :Blank
  50. for %%i in (
  51. Y o u r
  52. ) do (
  53. call :Type "%%i"
  54. )
  55. call :Blank
  56. for %%i in (
  57. L i f e
  58. ) do (
  59. call :Type "%%i"
  60. )
  61. call :Blank
  62. for %%i in (
  63. E a s i e r .
  64. ) do (
  65. call :Type "%%i"
  66. )
  67. call :Vbs_Sleep 1000
  68. call :Sleep_Installs
  69. @call :Restart
  70. @goto :Main
  71. :Blank
  72. call :Type "# "
  73. @goto :eof
  74. :23_Blank
  75. call :Type "#                       "
  76. @goto :eof
  77. :Type
  78. set /p Str=%~1<nul
  79. for /l %%a in (1,1,%Timer%) do set ReturnKey=0
  80. @goto :eof
  81. :Restart
  82. color %Color%
  83. cls
  84. set H=0
  85. set Min=0
  86. set S=0
  87. set H_2=0
  88. set Min_2=0
  89. set S_2=0
  90. set Ms=0
  91. set Ms_2=0
  92. @goto :eof
  93. :Main
  94. mode con cols=68 lines=9
  95. title Hope计时器
  96. set Error=0
  97. cls
  98. echo.
  99. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  100. echo.
  101. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U/I 开始计时/退出
  102. echo.
  103. echo.  P 打开计划程序  S 删除计划存储  X 调试        F 恢复到调试前
  104. echo.
  105. echo.  Z 风格
  106. call :get_key
  107. call :Settings_Time
  108. if /i "!key!"=="p" (
  109. set St_1=10001
  110. set En_1=10010
  111. @goto :Task
  112. )
  113. if /i "!key!"=="u" (
  114. mode con cols=68 lines=5
  115. set "Title=时间到!!!"
  116. @goto :Start
  117. )
  118. if /i "!key!"=="z" (
  119. mode con cols=68 lines=34
  120. @goto :Themes
  121. )
  122. if /i "!key!"=="x" (
  123. mode con cols=68 lines=34
  124. @goto :Debugging
  125. )
  126. if /i "!key!"=="f" (
  127. rd /s /q Logs >nul 2>nul
  128. )
  129. if /i "!key!"=="s" (
  130. rd /s /q Tasks >nul 2>nul
  131. )
  132. if /i "!key!"=="i" (
  133. del sleep.com sleep.exe sleep.vbs
  134. exit
  135. )
  136. if /i "!valid_key!" equ "0" goto :Main
  137. :Themes
  138. cd logs
  139. echo.%Color% > Color.ini
  140. echo.%Timer% > Timer.ini
  141. cd..
  142. cls
  143. color %Color%
  144. echo.
  145. echo.  Hope计时器[风格]
  146. set /p Str=--------------------------------------------------------------------<nul
  147. echo.
  148. echo.
  149. echo.  ^>^>^>^> 颜色
  150. set /p Str=--------------------------------------------------------------------<nul
  151. echo.
  152. echo.                                        ^|
  153. echo.    A 经典   B 标准   C 激情   D 复古   ^|  Hope.
  154. echo.                                        ^|
  155. echo.    E 大理岩 F 未来   G 蓝色   H 紫色   ^|  Make Your Life Easier.
  156. echo.                                        ^|
  157. echo.  ^>^>^>^> 开始动画速度
  158. set /p Str=--------------------------------------------------------------------<nul
  159. echo.
  160. echo.                                        ^|why join the navy,
  161. echo.    J 正常   K 快速   L 慢速            ^|if you can be a pirate?
  162. echo.                                        ^|           - Steve Jobs
  163. echo.                                        ^|
  164. echo.  ^>^>^>^> 操作
  165. set /p Str=--------------------------------------------------------------------<nul
  166. echo.
  167. echo.                                        ^|
  168. echo.    M 返回   N 还原默认                 ^|
  169. call :get_key
  170. if /i "!key!"=="a" (
  171. set Color=3f
  172. )
  173. if /i "!key!"=="b" (
  174. set Color=0f
  175. )
  176. if /i "!key!"=="c" (
  177. set Color=4e
  178. )
  179. if /i "!key!"=="d" (
  180. set Color=8f
  181. )
  182. if /i "!key!"=="e" (
  183. set Color=f8
  184. )
  185. if /i "!key!"=="f" (
  186. set Color=0a
  187. )
  188. if /i "!key!"=="g" (
  189. set Color=b1
  190. )
  191. if /i "!key!"=="h" (
  192. set Color=5f
  193. )
  194. if /i "!key!"=="j" (
  195. set Timer=128
  196. )
  197. if /i "!key!"=="k" (
  198. set Timer=32
  199. )
  200. if /i "!key!"=="l" (
  201. set Timer=512
  202. )
  203. if /i "!key!"=="m" (
  204. goto Main
  205. )
  206. if /i "!key!"=="n" (
  207. cd Logs
  208. del Timer.ini
  209. del Color.ini
  210. cd..
  211. set Timer=128
  212. set Color=0f
  213. )
  214. if /i "!valid_key!" equ "0" goto :Themes
  215. :Rem_Themes
  216. ; A 3F
  217. ; B 0F
  218. ; C 4E
  219. ; D 8F
  220. ; E F8
  221. ; F 0A
  222. ; G B1
  223. ; H 5F
  224. @goto :eof
  225. :Debugging
  226. echo.
  227. call :Echo_Debugging
  228. echo.    ^>^> 此向导将会帮助您调试您的设备是否适合运行 Hope (R) 计时器
  229. echo.
  230. echo.    ^>^> 请按回车键开始第一项检查...
  231. echo.
  232. pause > nul
  233. echo.
  234. call :Echo_Debugging
  235. echo.    ^>^> 正在调试 Certutil 性能...
  236. echo.
  237. echo.    ^>^> 请稍等...
  238. echo.
  239. echo.1 > ReturnKey.ini
  240. Certutil -encode ReturnKey.ini Hope.ini > nul
  241. if not exist Hope.ini (
  242. echo.    ^>^> 您的操作系统与 Certutil 不兼容, 无法运行Hope计时器...
  243. echo.
  244. echo.    ^>^> 请按回车键退出...
  245. pause > nul
  246. exit
  247. )
  248. if exist ReturnKey.ini del ReturnKey.ini
  249. if exist Hope.ini del Hope.ini
  250. echo.    ^>^> 您的操作系统与 Certutil 兼容, 可以运行Hope计时器...
  251. echo.
  252. echo.    ^>^> 请按回车键继续...
  253. pause > nul
  254. call :Echo_Debugging
  255. echo.    ^>^> 正在安装延时程序,请稍等...
  256. echo.
  257. call :Sleep_Installs
  258. echo.    ^>^> 接下来,您将会调试秒表, 我们将会为您进行系统标准计时...
  259. echo.
  260. echo.    ^>^> 我们会为你进行延时五秒,请您准备好您的计时设备...
  261. echo.
  262. echo.    ^>^> 请将您的计时设备置于您的电子计算机左侧, 打开计时设备但
  263. echo.
  264. echo.    ^>^> 不要开始计时, 请注意, 您按下回车键或空格键之后Hope计时
  265. echo.
  266. echo.    ^>^> 器将开始计时, 您应当同时启动Hope计时器与您的设备...
  267. echo.
  268. echo.    ^>^> 当Hope计时器的窗体变红时, 您应当停止您的计时设备, 按下
  269. echo.
  270. echo.    ^>^> 回车键, 并填写读数, Hope计时器会为您自动校准...
  271. pause > nul
  272. mode con cols=68 lines=5
  273. for /l %%i in (1,1,50) do (
  274. cls
  275. echo.
  276. echo.
  277. echo.    ^>^> %%i00 毫秒 / 5000 毫秒
  278. call :Sleep 100
  279. )
  280. color 4e
  281. cls
  282. echo.
  283. echo.
  284. echo.    ^>^> 请按回车键开始输入读数
  285. pause > nul
  286. cls
  287. echo.
  288. echo.
  289. set /p Math=    ^>^> 请输入读数:
  290. call :VisualSet Result 5/%Math%
  291. call :VisualSet Result 100*%Result%
  292. Md Logs >nul 2>nul
  293. echo.%Result% > Logs\Time.ini
  294. color %Color%
  295. cls
  296. echo.
  297. echo.
  298. echo.    ^>^> 请按回车键重启本程序...
  299. pause > nul
  300. @goto :Begin
  301. :VisualSet
  302. @echo off
  303. echo X=%~2>>VisualSet.vbs
  304. echo wscript.echo(X)>>VisualSet.vbs
  305. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  306. if exist VisualSet.vbs del VisualSet.vbs
  307. goto :eof
  308. :Echo_Debugging
  309. mode con cols=68 lines=34
  310. cls
  311. echo.
  312. echo.  Hope计时器[调试程序]
  313. set /p Str=--------------------------------------------------------------------<nul
  314. echo.
  315. echo.
  316. @goto :eof
  317. :Task
  318. mode con cols=68 lines=34
  319. Md Tasks >nul 2>nul
  320. cls
  321. title Hope计时器[计划程序]
  322. set Error=0
  323. echo.
  324. echo.  Hope计时器[计划程序]
  325. set /p Str=--------------------------------------------------------------------<nul
  326. echo.
  327. echo.
  328. echo.    ^>^> Q 新建计划   W 使用计划   D 删除计划   E 返回菜单   R 退出
  329. if not exist Tasks\*.Htd (
  330. echo.
  331. echo.    ^>^> 当前没有计划
  332. set /p Str=--------------------------------------------------------------------<nul
  333. echo.
  334. echo.
  335. )
  336. if not exist Tasks\Htd.Hdat echo.10000 > Tasks\Htd.Hdat
  337. if exist Tasks\*.Htd (
  338. cd Tasks
  339. echo.
  340. echo.    ^>^> 当前计划列表
  341. set /p Str=--------------------------------------------------------------------<nul
  342. echo.
  343. echo.
  344. for /f %%i in ('dir /b *.Htd') do (
  345. for /f "skip=5" %%j in (%%~ni.Htd) do echo.    ^>^> 编号:%%~ni  备注:%%j
  346. )
  347. echo.
  348. cd..
  349. )
  350. )
  351. call :get_key
  352. if /i "!key!"=="E" (
  353. @goto :Main
  354. )
  355. if /i "!key!"=="D" (
  356. @goto :Del
  357. )
  358. if /i "!key!"=="R" (
  359. exit
  360. )
  361. if /i "!key!"=="Q" (
  362. @goto :New
  363. )
  364. if /i "!key!"=="W" (
  365. @goto :Open
  366. )
  367. if /i "!valid_key!" equ "0" @goto :Task
  368. :Open
  369. if exist Tasks\*.Htd (
  370. set "Content= "
  371. set /p Content=    ^>^> 请输入计划编号:
  372. goto Open_2
  373. ) else cd..&@goto :Task
  374. :Del
  375. if exist Tasks\*.Htd (
  376. set "Content= "
  377. set /p Content=    ^>^> 请输入计划编号:
  378. goto Del_2
  379. ) else cd..&@goto :Task
  380. :Del_2
  381. cd Tasks
  382. if exist %Content%.Htd (
  383. del %Content%.Htd
  384. cd..
  385. goto Task
  386. ) else cd..&goto Task
  387. :Open_2
  388. cd Tasks
  389. if exist %Content%.Htd (
  390. call :Read %Content%
  391. cd..
  392. mode con cols=68 lines=5
  393. @goto :Start
  394. ) else cd..&goto Task
  395. :New
  396. cd Tasks
  397. < Htd.Hdat (
  398. set /p Num=
  399. )
  400. set /a Num+=1
  401. echo.%Num% > Htd.Hdat
  402. cd..
  403. echo.
  404. echo.    ^>^> 新建计划:%Num%
  405. echo.
  406. set "Content=时间到!!!"
  407. set /p Content=    ^>^> 备注:
  408. echo.
  409. set "Content=%Content:>=^>%"
  410. set "Content=%Content:<=^<%"
  411. set "Content=%Content:|=^|%"
  412. set "Title= "
  413. set /p Title=    ^>^> 到时提醒:
  414. echo.
  415. set "Title=%Title:>=^^^>%"
  416. set "Title=%Title:<=^^^<%"
  417. set "Title=%Title:|=^^^|%"
  418. set H=0
  419. set Min=0
  420. set S=0
  421. set H_2=0
  422. set Min_2=0
  423. set S_2=0
  424. set Ms=0
  425. set Ms_2=0
  426. call :Vbs_Sleep 1000
  427. @goto :New_2
  428. :Read
  429. < %1.Htd (
  430. set /p H=
  431. set /p Min=
  432. set /p S=
  433. set /p Ms_2=
  434. set /p Title=
  435. set /p Content=
  436. )
  437. @goto :eof
  438. :New_2
  439. cls
  440. echo.
  441. echo.    ^>^> 当前计时时间:%H%小时%Min%分钟%S%秒
  442. echo.
  443. echo.  Q/W 小时加/减   E/R 分钟加/减   T/Y 秒加/减   U 完成计划
  444. echo.
  445. call :get_key
  446. call :Settings_Time
  447. if /i "!key!"=="U" (
  448. (
  449. echo.%H%
  450. echo.%Min%
  451. echo.%S%
  452. echo.%Ms_2%
  453. echo.%Title%
  454. echo.%Content%
  455. ) > Tasks\%Num%.Htd
  456. @goto :Task
  457. )
  458. if /i "!valid_key!" equ "0" @goto :New_2
  459. :Error
  460. color 1f
  461. cls
  462. echo.
  463. echo.    ^>^> Sleep.exe 和 Sleep.com 不知到何处去了...
  464. echo.
  465. echo.    ^>^> 正在帮您恢复
  466. call :Sleep_Installs
  467. goto :Restart
复制代码

TOP

版本1.0.0024下半部分
  1. :Start
  2. set Error=0
  3. cls
  4. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  5. echo.
  6. echo.    ^>^> %H_2%小时%Min_2%分钟%S_2%秒%Ms%毫秒/%H%小时%Min%分钟%S%秒
  7. echo.
  8. echo.    ^>^> Ctrl+C暂停或退出...
  9. call :Sleep %Time%
  10. if %Error%==1 goto :Error
  11. set /a Ms+=100
  12. if %Ms%==1000 set /a S_2+=1&set Ms=0
  13. if %S_2% Geq 60 set /a Min_2+=1&set S_2=0
  14. if %Min_2% Geq 60 set /a H_2+=1&set Min_2=0
  15. if %H_2% Geq %H% if %Min_2% Geq %Min% if %S_2% Geq %S% goto :End
  16. if /i "!valid_key!" equ "0" goto :Start
  17. :End
  18. cls
  19. color 4e
  20. title 计时器[%H_2%小时%Min_2%分钟%S_2%秒/%H%小时%Min%分钟%S%秒]
  21. Call :Msg "%Title%" vbExclamation "Hope计时器"
  22. color %Color%
  23. @call :Restart
  24. @goto :Main
  25. :Vbs_Sleep
  26. echo.Wscript.Sleep %1 > Sleep.vbs
  27. call Sleep.vbs > nul
  28. if exist ReturnKey.vbs del ReturnKey.vbs
  29. @goto :eof
  30. :Sleep_Installs
  31. (
  32. echo.-----BEGIN CERTIFICATE-----
  33. echo.TVpQAQEAAAAEAAAA//8AAFABAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  34. echo.AAAAAAAAAAAAAAAAkAAAAPy+gQAPtkz/ZjHSZjHASXggrCwwchQ8CXcQZmvSCmYB
  35. echo.wi7HBi8AMQDr5C7/Ji8ADgBmadLoAwAAZonRZsHpELSGzRW4AEzNIQAAAAAAAAAA
  36. echo.UEUAAEwBAQBQeaU2AAAAAAAAAADgAA8BCwEFDAACAAAAAAAAAAAAAH4QAAAAEAAA
  37. echo.ACAAAAAAQAAAEAAAAAIAAAQAAAAAAAAABAAAAAAAAAAAIAAAAAIAAAAAAAADAAAA
  38. echo.AAAQAAAQAAAAABAAABAAAAAAAAAQAAAAAAAAAAAAAAAQEAAAKAAAAAAAAAAAAAAA
  39. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  40. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAA
  41. echo.AAAAAAAAAAAudGV4dAAAANwAAAAAEAAAAAIAAAACAAAAAAAAAAAAAAAAAAAgAADg
  42. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  43. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWEAAAZBAAAHYQAAAAAAAA
  44. echo.RhAAAAAAAAAAAAAAOBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEtFUk5FTDMy
  45. echo.LmRsbAAAVhAAAGQQAAB2EAAAAAAAAAAARXhpdFByb2Nlc3MAAABHZXRDb21tYW5k
  46. echo.TGluZUEAAABTbGVlcAD/FQQQQAAx0khAgDgAdBGAOCJ1AvfSCdJ174A4IHXqQPyJ
  47. echo.xjHSMcCsCMB0IywwchU8CXcRa9IKAcLHBckQQADNEEAA6+L/JckQQAClEEAAUv8V
  48. echo.CBBAAGoA/xUAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  49. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  50. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  51. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  52. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  53. echo.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  54. echo.AAAAAAAAAAAAAAAAAAAAAA==
  55. echo.-----END CERTIFICATE-----
  56. ) > Sleep.com
  57. Certutil -Decode Sleep.com Sleep.exe > nul
  58. Certutil -Decode -f Sleep.com Sleep.com > nul
  59. goto :eof
  60. :Sleep
  61. set Error=0
  62. if exist Sleep.exe (
  63. Sleep.exe %1
  64. goto :eof
  65. )
  66. if not exist Sleep.exe if exist Sleep.com (
  67. Sleep.com %1
  68. goto :eof
  69. )
  70. if not exist Sleep.exe if not exist Sleep.com (
  71. set Error=1
  72. goto :eof
  73. )
  74. :get_key
  75. rem 用法:call :get_key
  76. set "key="
  77.   for /f "delims=" %%a in ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined key set "key=%%a"
  78.   set "key=%key:~-1%"
  79.   set "valid_key=0"
  80. goto :eof
  81. :Msg
  82. Rem 用法: Call :Msg "Text" [buttons] "Title"
  83. echo.Msg=msgbox("%~1",%2,"%~3") > ReturnKey.vbs
  84. Call ReturnKey.vbs > nul
  85. if exist ReturnKey.vbs del ReturnKey.vbs
  86. goto :eof
  87. :Settings_Time
  88. if %Ms_2% Leq 200000000 if %H% geq 0 if %Min% Geq 0 if %S% Geq 0 (
  89. if /i "!key!"=="q" (
  90. set /a Ms_2+=3600000
  91. set /a H+=1
  92. )
  93. if /i "!key!"=="w" (
  94. set /a Ms_2-=3600000
  95. set /a H-=1
  96. )
  97. if /i "!key!"=="e" (
  98. set /a Ms_2+=60000
  99. set /a Min+=1
  100. )
  101. if /i "!key!"=="r" (
  102. set /a Ms_2-=60000
  103. set /a Min-=1
  104. )
  105. if /i "!key!"=="t" (
  106. set /a Ms_2+=1000
  107. set /a S+=1
  108. )
  109. if /i "!key!"=="y" (
  110. set /a Ms_2-=1000
  111. set /a S-=1
  112. )
  113. )
  114. if %S% Lss 0 (
  115. if %Min% Geq 0 if %H% Geq 0 (
  116. set /a Min-=1&set /a S+=60
  117. )
  118. if %Min% Leq 0 if %H% Leq 0 (
  119. echo.
  120. echo.    ^>^> 算数错误!
  121. call :Vbs_Sleep 100
  122. @call :Restart
  123. )
  124. )
  125. if %Min% Lss 0 (
  126. if %H% Gtr 0 set /a H-=1&set /a Min+=60
  127. if %H% Leq 0 (
  128. echo.
  129. echo.    ^>^> 算数错误!
  130. call :Vbs_Sleep 100
  131. @call :Restart
  132. )
  133. )
  134. if %H% Lss 0 (
  135. echo.
  136. echo.    ^>^> 算数错误!
  137. call :Vbs_Sleep 100
  138. @call :Restart
  139. )
  140. if %Ms_2% Gtr 200000000 (
  141. echo.
  142. echo.    ^>^> 算数错误!
  143. call :Vbs_Sleep 100
  144. @call :Restart
  145. )
  146. if %S% Geq 60 set /a Min+=1&set S=0
  147. if %Min% Geq 60 set /a H+=1&set Min=0
复制代码

TOP

for /l 的运算速度太快了不容易察觉
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

您可以把慢速的数值调成4096再试一下
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 79# cmd1152
文件出现在桌面?
我没有使用%UserProFile%\Desktop
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 84# cmd1152
抱歉,Win10中并没有如此情况...[也许Win10有大改动...]
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 86# cmd1152
哦,是的...
多谢提醒
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

返回列表