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

[其他] 命令行窗口自动居中之批处理版(2009-03-17更新)

[复制链接]
发表于 2009-3-8 19:31:14 | 显示全部楼层
要还原的话要删除相应注册表项,最好能批处理之。
 楼主| 发表于 2009-3-9 10:49:18 | 显示全部楼层

回复 16楼 的帖子

删除相应注册表项是恢复的方法之一,另一个方法是手工修改命令行窗口的属性然后保存即可。

如果要用批处理来恢复,需要增加一个功能模块来保存修改前的设置,代码变得更长了,已经超出我“Just for fun”的范围,我不想写了,留个有兴趣的朋友玩吧^_^
发表于 2009-3-17 14:42:31 | 显示全部楼层

回复 15楼 的帖子

不好意思,现在才看到兄的回复。公式的确错了,应该是:
  1. set /a FontWidth=8, FontHeight=16
  2. set /a FontSize=(FontHeight "<<" 16) "|" FontWidth
复制代码
另外测试不必补零也可以啊~
是否在读取宽/高的时候写错了,测试代码:
设置.bat
  1. @echo Off & setlocal EnableDelayedExpansion
  2. Set /a FontWidth=8, FontHeight=16
  3. Set /a FontSize=(FontHeight "<<" 16) "|" FontWidth

  4. Call :Dec2Hex %FontSize% iFontSize
  5. Echo 0x%iFontSize%
  6. Reg Add hkcu\console /v FontSize /t reg_dword /d 0x%iFontSize%
  7. Pause>nul & Exit /b



  8. :Dec2Hex
  9. set num=%1
  10. set str=0123456789ABCDEF
  11. set numDiv=%num%
  12. set numConn=
  13. :LoopD2H
  14. set /a numMod=numDiv%%16
  15. set numMod=!str:~%numMod%,1!
  16. set /a numDiv/=16
  17. set numConn=%numMod%%numConn%
  18. if %numDiv% equ 0 (
  19.   set %2=%numConn%
  20.   goto :eof
  21. )
  22. goto :LoopD2H
复制代码
读取.bat
  1. @echo Off
  2. For /f "skip=4 tokens=3" %%a in ('reg query hkcu\console\ /v FontSize') do set /a FontSize=%%a

  3. Set /a FontHeight=FontSize ">>" 16, FontWidth=FontSize "&" 0xffff
  4. Echo FontWidth: %FontWidth% FontHeight: %FontHeight%
  5. Pause>nul
复制代码

评分

参与人数 1PB +10 技术 +1 收起 理由
Batcher + 10 + 1 感谢分享

查看全部评分

 楼主| 发表于 2009-3-17 22:52:51 | 显示全部楼层

回复 18楼 的帖子

我说的补零是指我原来采用的那个笨办法,你这个移位的方法是不需要补零的。
感谢分享!
发表于 2013-11-2 16:01:05 | 显示全部楼层
实现这个功能好长啊
发表于 2014-3-8 18:23:44 | 显示全部楼层
不懂啊!!!
发表于 2016-10-12 23:03:41 | 显示全部楼层
回复 5# BAT1


    本人第一次就行了,执行速度很满意。
发表于 2019-9-14 18:33:26 | 显示全部楼层
你好,楼主,请问删除哪个注册表项才能恢复原来,用了你1楼的代码,我所有bat和cmd都无法正常打开显示桌面了,一直闪退最小化,我真不知道该怎么办才好
发表于 2022-5-2 12:49:11 | 显示全部楼层
回复 23# 1139054012
这个事件就告诉我们,RUN脚本的时候,要备份注册表
发表于 2023-1-15 20:28:29 | 显示全部楼层
64位系统运行后窗口消失了!怎么解决???
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 00:07 , Processed in 0.018780 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表