Advertisement
Guest User

Untitled

a guest
Oct 14th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1.  
  2.  
  3. @echo off
  4.  
  5. echo. ---------------------------------------
  6. echo. ---------------------------------------
  7. echo. Welcome to Jared's FixItTool v1.02
  8. echo. ---------------------------------------
  9. echo. ---------------------------------------
  10. echo. This program will restart your computer
  11. echo. Please save any work.
  12. echo. ---------------------------------------
  13.  
  14.  
  15.  
  16. setlocal enableextensions disabledelayedexpansion
  17.  
  18. for /l %%f in (0 1 100) do (
  19. call :drawProgressBar %%f "Detecting problems..."
  20. )
  21. for /l %%f in (100 -1 0) do (
  22. call :drawProgressBar %%f "Fixing issues..."
  23. )
  24. for /l %%f in (0 5 100) do (
  25. call :drawProgressBar !random! "Finalizing..."
  26. )
  27.  
  28. rem Clean all after use
  29. call :finalizeProgressBar 1
  30.  
  31.  
  32. call :initProgressBar "|" " "
  33. call :drawProgressBar 0 "Please restart computer now."
  34. for /l %%f in (0 1 100) do (
  35. call :drawProgressBar %%f
  36. )
  37.  
  38. endlocal
  39. exit /b
  40.  
  41.  
  42. :drawProgressBar value [text]
  43. if "%~1"=="" goto :eof
  44. if not defined pb.barArea call :initProgressBar
  45. setlocal enableextensions enabledelayedexpansion
  46. set /a "pb.value=%~1 %% 101", "pb.filled=pb.value*pb.barArea/100", "pb.dotted=pb.barArea-pb.filled", "pb.pct=1000+pb.value"
  47. set "pb.pct=%pb.pct:~-3%"
  48. if "%~2"=="" ( set "pb.text=" ) else (
  49. set "pb.text=%~2%pb.back%"
  50. set "pb.text=!pb.text:~0,%pb.textArea%!"
  51. )
  52. <nul set /p "pb.prompt=[!pb.fill:~0,%pb.filled%!!pb.dots:~0,%pb.dotted%!][ %pb.pct% ] %pb.text%!pb.cr!"
  53. endlocal
  54. goto :eof
  55.  
  56. :initProgressBar [fillChar] [dotChar]
  57. if defined pb.cr call :finalizeProgressBar
  58. for /f %%a in ('copy "%~f0" nul /z') do set "pb.cr=%%a"
  59. if "%~1"=="" ( set "pb.fillChar=#" ) else ( set "pb.fillChar=%~1" )
  60. if "%~2"=="" ( set "pb.dotChar=." ) else ( set "pb.dotChar=%~2" )
  61. set "pb.console.columns="
  62. for /f "tokens=2 skip=4" %%f in ('mode con') do if not defined pb.console.columns set "pb.console.columns=%%f"
  63. set /a "pb.barArea=pb.console.columns/2-2", "pb.textArea=pb.barArea-9"
  64. set "pb.fill="
  65. setlocal enableextensions enabledelayedexpansion
  66. for /l %%p in (1 1 %pb.barArea%) do set "pb.fill=!pb.fill!%pb.fillChar%"
  67. set "pb.fill=!pb.fill:~0,%pb.barArea%!"
  68. set "pb.dots=!pb.fill:%pb.fillChar%=%pb.dotChar%!"
  69. set "pb.back=!pb.fill:~0,%pb.textArea%!
  70. set "pb.back=!pb.back:%pb.fillChar%= !"
  71. endlocal & set "pb.fill=%pb.fill%" & set "pb.dots=%pb.dots%" & set "pb.back=%pb.back%"
  72. goto :eof
  73.  
  74. :finalizeProgressBar [erase]
  75. if defined pb.cr (
  76. if not "%~1"=="" (
  77. setlocal enabledelayedexpansion
  78. set "pb.back="
  79. for /l %%p in (1 1 %pb.console.columns%) do set "pb.back=!pb.back! "
  80. <nul set /p "pb.prompt=!pb.cr!!pb.back:~1!!pb.cr!"
  81. endlocal
  82. )
  83. )
  84. for /f "tokens=1 delims==" %%v in ('set pb.') do set "%%v="
  85. goto :eof
  86.  
  87. shutdown.exe /r /t 00
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement