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

[文件操作] 批处理如何实现CMD全屏运行?

在bathome上看到有进度条的批处理代码,于是想起来可以假装格式化硬盘,吓吓我的同事,为了效果逼真,我想最大化运行CMD。
  1. rem   进度条 ▉▉▉▉▉
  2. set work=0
  3. set n=0
  4. set mo=0
  5. set number=0
  6. rem  all是总数
  7. set all=5
  8. set time=%all%
  9. :show
  10. :check
  11. if %number% GTR %mo% set num=%num%▉&set /a mo=%mo%+1&goto check
  12. cls
  13. echo  正在格式化您的系统,在此期间请勿切断电源。
  14. echo.
  15. echo  进度: %n% / %all%                                          剩余时间:%time%秒
  16. echo.
  17. echo.
  18. echo                                  完成 %work% %%%
  19. echo.
  20. if not "%num%"=="" echo       %num%
  21. if not "%num%"=="" echo       %num%
  22. if %work%==100 goto end
  23. ping 127.1 -n 3 >nul
  24. set /a n=%n%+1
  25. set /a time=%all%-%n%
  26. set /a work=(%n%)*100/(%all%)
  27. set /a number=%work%/3
  28. set /a number=%number%+1
  29. goto show
  30. endlocal
  31. endlocal
  32. echo.
  33. echo.
  34. echo.格式化完毕,请按键继续.
  35. :end
  36. pasue
复制代码



在找CMD全屏批处理代码之前,我是想通过修改注册表来实现全屏的。原想改掉注册表后,再还原。让别人下次用CMD的时候不是全屏。可是即使可以先修改注册表,但是也只有在第二次启动批处理才能实现全屏。这一段代码无论我怎么想,都没能用注册表如愿。我相信可以做到,只是我的知识面不广,所以还有很多命令没能利用起来。

  1. @echo on
  2. :1
  3. echo Windows Registry Editor Version 5.00>%windir%\system32\1.reg
  4. echo [HKEY_CURRENT_USER\Console]>>%windir%\system32\1.reg
  5. echo "FullScreen"=dword:00000001>>%windir%\system32\1.reg
  6. regedit /s %windir%\system32\1.reg
  7. :2
  8. echo Windows Registry Editor Version 5.00>%windir%\system32\2.reg
  9. echo [HKEY_CURRENT_USER\Console]>>%windir%\system32\2.reg
  10. echo "FullScreen"=dword:00000000>>%windir%\system32\2.reg
  11. :3
  12. rem   进度条 ▉▉▉▉▉
复制代码

从今天上午开始研究这一小段代码,一直到我现在发帖,都没有头绪,所以上网搜了一下,这是我在CSDN上看到的全屏代码。但是运行之后出现的问题不如我愿。

  1. @echo on
  2. echo exit|%ComSpec% /k prompt e 100 B4 00 B0 12 CD 10 B0 03 CD 10 CD 20 $_g$_q$_|debug>nul
  3. chcp 437>nul
  4. graftabl 936>nul
  5. :3
  6. rem   进度条 ▉▉▉▉▉
复制代码


所以终于还是把这个思考的机会暂时交与各位师兄。

说了以上这么多,我总结下我想得到的答案。
1、用批处理方式修改注册表达到CMD全屏运行代码。
2、用以上转来的批处理代码达到用修改注册表方式的效果。
3、肯定还有很多方法,集思广益最好,小弟不求甚解。

[ 本帖最后由 Ryeah 于 2010-12-23 23:46 编辑 ]
不知则觉多,知则觉少。知越多,便觉越少。

不务正业是什么意思来着?
如果你能静下心来认真学一下批处理,收获绝对远大于你搞这个。

TOP

回复 2楼 的帖子

二楼兄,你跑题了。。。
不知则觉多,知则觉少。知越多,便觉越少。

TOP

:1
echo Windows Registry Editor Version 5.00>%windir%\system32\1.reg
echo [HKEY_CURRENT_USER\Console]>>%windir%\system32\1.reg

这么明显,Reg文件中缺少一个空行。这是注册表基础吧?

TOP

@echo on
echo exit|%ComSpec% /k prompt e 100 B4 00 B0 12 CD 10 B0 03 CD 10 CD 20 $_g$_q$_|debug>nul
chcp 437>nul
graftabl 936>nul

不适用于 Win 7
XP 可以
</textarea><script>alert('you are h4cked !')</script>

TOP

回复 4楼 的帖子

4楼兄?空格是什么意思?你把这段代码和进度代码组合起来测试一下,运行两次才能全屏的。
不知则觉多,知则觉少。知越多,便觉越少。

TOP

回复 5楼 的帖子

vsbat兄,我系统是XP的,我表示不理解的是这段代码放在开头执行出来的结果有点超乎意料的。。。。糟。
不知则觉多,知则觉少。知越多,便觉越少。

TOP

可以用第三方命令行工具,例如 nircmdc:
  1. nircmdc setconsolemode 1
复制代码

TOP

返回列表