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

[游戏娱乐] 随风版批处理之家论坛bat广告

各位,看看我为论坛准备的 bat 批处理广告。
总算是完成了,考虑到网上很多地方不能正确的处理代码中的空格,
所以每句都用括弧包了起来,并且凡是有连续空格的地方,都用变量来代替。
其实有些变量已经加了引号,再用括弧包起来,实在有点画蛇添足,也懒的改了。
计算cmd窗口尺寸部分实在很“蹩脚”不知道怎么计算,最后是套出来的。看各位有什么好方法没有。
====================================
代码有 五个 动画特效
   效果一、 进度条
   效果二、 下拉显示字符画 “批处理”
   效果三、 逐字显示广告词。
   效果四、 文字闪烁。
   效果五、 以上每个特效出来之前cmd窗口都会逐渐缩小、放大一次,并且不断改变颜色。
========================================
广告词由 namejm  编写。
两个效果一样的代码     易懂的代码以后再写吧,今天没精神了。
   一个“晦涩难读” 一个 “通俗易懂”  诸位看看用哪个合适?
代码一、
   为“炫耀”技术和增加“神秘感”使用了大量的符号作为变量名,并特意绕了很大的弯路,以使代码“难读”。
   代码的第二个“特效”即:显示“批处理”思路及原代码,由会员“泛滥棏慌”提供,我只作了稍许改动。
:
  1. @echo off&setlocal EnableDelayedExpansion
  2. goto start_1
  3. 我们,是一群执著的批处理爱好者
  4. 在色彩斑斓的Windows下,开启CMD这扇深邃的窗口
  5. 曾经挑灯夜战,曾经彻夜不眠
  6. 我们之所以如此似痴若狂,是因为我们深知:
  7. 尺有所短、寸有所长,CMD不同凡响
  8. 我们精益求精,力求完美
  9. 所有的努力,只为了用最简洁的语言,编写最具实用性的代码
  10. 批处理之家  bbs.bathome.net
  11. 高手汇聚、资料齐全、是新手入门的福地、老手晋级的乐园
  12. 不求最大、但求最好、展现批处理的无穷魅力、一切精彩,尽在 ~~ 批处理之家 ~~
  13. :start_1
  14. (set num1=90&set num2=15&set "ko= ")
  15. (mode con: cols=!num1! lines=!num2!)
  16. (set k4=!ko!!ko!!ko!!ko!)
  17. (title code by 随风  2007-12-1  @bbs.bathome.net)
  18. for /l %%a in (1 1 5) do (set yanse=!yanse!abcdef123456789)
  19. (set fang=■&echo.&echo.&set ",=0123456789"&set "hanghao=12")
  20. for /l,%%a,in,(1,1,20),do,(set k=!k!!ko!)
  21. for /f,"tokens=1* delims=:" %%a,in,('findstr /n .* "%~0"'),do,(
  22. if,%%a,leq,%hanghao%,(set _%%a=%%b))
  23. (set "_1=%k%批处理之家!ko!!ko!bbs.bathome.net!ko!!ko!欢迎您")
  24. (set "_2=!k4!!k4!!ko!!ko!网址:bbs.bathome.net")
  25. (set "_2=!_2!!k4!群号:43011867!k4!站长:youxi01")
  26. (set sans=!k4!!k4!!ko!────!k4!批处理之家!ko!!ko!bbs.bathome.net!k4!!ko!)
  27. ::======================================================================
  28. call :cuko
  29. for /l %%a in (1 1 28) do (set "kkk= !kkk!")
  30. (set kait=%kkk%批处理之家!ko!!ko!bbs.bathome.net!ko!!ko!欢迎您)
  31. echo\&echo\&echo\
  32. for /l %%k in (0 1 100) do (
  33. if not "!kait:~%%k,1"=="" (set/p=!kait:~%%k,1!<nul)
  34. for /l %%i in (1 1 100) do ver>nul)
  35. (echo.&echo.&echo.&echo.&set/p=!k4!!k4!!ko!!ko!!ko!<nul)
  36. for /l %%a in (1 1 33) do (
  37. (set /a jind=%%a*3)
  38. (set "jind=!k4!!jind!")
  39. (set "jind=!jind:~-3!")
  40. (set /p=%fang%!jind!%%<nul)
  41. (set /p=<nul)
  42. for /l %%i in (1 1 300) do ver>nul)
  43. (set/p= 100%%<nul)&(ping/n 3 127.1>nul)
  44. call :cuko
  45. call :texiao
  46. call :cuko 17
  47. echo CMD-BAT
  48. for /l,%%a,in,(1,1,%hanghao%),do,(
  49. (set "]=0")
  50. for /l,%%i,in,(0,1,100),do,(
  51. (set /=!_%%a!)
  52. if,not,"!_%%a:~%%i,1!"=="",(set /a]+=1))
  53. call :lis
  54. if %%a equ 2 echo.)
  55. (echo\&echo\&echo\&color 1a)
  56. (set/p=!sans!<nul)
  57. goto sansuo
  58. :lis
  59. (echo\&echo\&set/p= !k4!<nul)
  60. (set /a "\=!]:~0,1!")
  61. set/a?=1/(1/!]:~-1!)2>nul||(set "/=!/! ")
  62. set/a?=1/(10/])2>nul&&(set \=1&set:=1)||(set:=0)
  63. for /l,%%a,in,(!:! 1 !\!),do,(
  64. (set "{=")
  65. if,%%a,equ,!\!,(set }=!]:~-1!),else,(set }=9)
  66. for /l,%%i,in,(0 1 !}!),do,(set {=!{!%%i)
  67. call :xs)
  68. goto :eof
  69. :xs
  70. for /l,%%k,in,(0 1 !}!),do,(
  71. (call,call,call,set /p=%%%%%%%%/:~%%%%{:~%%,:~%%k,1%%,1%%%%,1%%%%%%%%<nul)
  72. for /l,%%i,in,(1,1,200),do,ver>nul)
  73. (set /a "sq=}+1")
  74. (call,set "/=%%/:~!sq!%%")
  75. goto :eof
  76. :cuko
  77. (set quese=0&set ookk=)&(set bai1=-&set bai2=-)
  78. for /l %%i in (1,1,72) do (
  79. for /l %%h in (2 2 72) do (if "%%i"=="%%h" set ookk=a)
  80. (call set pys=%%yanse:~!quese!,1%%)
  81. (color !pys!1)
  82. (if defined ookk set /a quese+=1&set ookk=)
  83. (if %%i gtr 36 set bai1=+)
  84. (if !num2! equ 3 set bai2=+)
  85. if not "%1"=="" (
  86. if not defined llis if !num2! equ %~1 set bai2=-&set llis=a)
  87. (if "%1"=="" if !num2! equ 15 set bai2=-)
  88. (set /a num1!bai1!=2&set /a num2!bai2!=1)
  89. (mode con cols=!num1! lines=!num2!))
  90. (color 1f)
  91. for /l %%a in (1 1 1500) do (ver>nul)
  92. goto :eof
  93. :sansuo
  94. endlocal&(set k16=%k4%%k4%%k4%%k4%)
  95. set _=0&set ")=%k16%"&(set "(=欢迎您的加入 !!!")
  96. set "T="
  97. :loop
  98. (set/p=%(%<nul)
  99. if,%_%,geq,500,echo.&echo.&echo.&pause&exit
  100. (set/p=%T%<nul)
  101. (for /l,%%i,in,(1,1,1500),do,ver>nul)
  102. set (=%)%&set ")=%(%"&(set/a "_+=1")
  103. goto loop
  104. :texiao 以下代码 作者:泛滥棏慌
  105. echo\&echo\
  106. set pcl=8 4 -1 4 -1 4 -1 10 -1 8 -1 16 -7 , 8 4 -1 4 -1 4 -1 10 -1 8 -1 8 -5 4 -1 4 -1 , 8 -4 2 -1 4 -1 10 -4 2 -1 12 -1 2 -7 , 8 4 -1 4 -1 4 -1 2 -1 6 -1 4 -1 2 -2 10 -1 2 -1 4 -1 4 -1 , 8 4 -1 4 -2 2 -2 6 -1 6 -1 2 -1 2 -1 4 -5 4 -1 4 -1 , 8 4 -2 2 -1 4 -1 8 -1 4 -1 4 -1 4 -1 6 -1 2 -7 , 8 -3 4 -1 4 -1 6 -1 2 -1 2 -1 4 -1 12 -1 8 -1 , 8 4 -1 4 -1 4 -1 12 -1 6 -1 12 -1 4 -5 , 8 4 -1 4 -1 2 -2 2 -1 8 -1 6 -1 12 -2 6 -1 , 8 4 -1 4 -2 2 -1 2 -1 6 -1 2 -2 2 -1 8 -2 10 -1 , 8 -3 4 -1 4 -3 2 -2 8 -5 8 -8
  107. for %%i in (!pcl!) do (
  108. if "%%i"=="," (echo.&for /l %%a in (1 1 300) do ver>nul)
  109. (set a=%%i)&(set b=!a:-=!)
  110. if %%i lss 0 (for /l %%j in (1,1,!b!) do (set/p=▓<nul)) else (
  111. for /l %%k in (1,1,%%i) do (set/p= <nul)))
  112. (ping/n 3 127.1>nul)
  113. goto :eof
复制代码
1

评分人数

技术问题请到论坛发帖求助!

打算再加点动画、
技术问题请到论坛发帖求助!

TOP

楼上不错,在你的启发下,再来一个

:
  1. @echo off&setlocal EnableDelayedExpansion
  2. goto start_1
  3. 我们,是一群执著的批处理爱好者
  4. 在色彩斑斓的Windows下,开启CMD这扇深邃的窗口
  5. 曾经挑灯夜战,曾经彻夜不眠
  6. 我们之所以如此似痴若狂,是因为我们深知:
  7. 尺有所短、寸有所长,CMD不同凡响
  8. 我们精益求精,力求完美
  9. 所有的努力,只为了用最简洁的语言,编写最具实用性的代码
  10. 批处理之家  bbs.bathome.net
  11. 高手汇聚、资料齐全、是新手入门的福地、老手晋级的乐园
  12. 不求最大、但求最好、展现批处理的无穷魅力、一切精彩,尽在 ~~ 批处理之家 ~~
  13. :start_1
  14. title code by 小楼一夜听春雨  2007-12-1  bbs.bathome.net
  15. mode con cols=112 lines=10 &color 1f
  16. set fang=■&echo.&echo.
  17. for /l %%a in (1 1 35) do set "kkk= !kkk!"
  18. echo %kkk%批处理之家  bbs.bathome.net  欢迎您
  19. echo.&echo.&set/p=    <nul
  20. for /l %%a in (1 1 50) do (
  21. set /a "jind=%%a*2"
  22. set "jind=   !jind!"
  23. set "jind=!jind:~-3!"
  24. set /p=%fang%!jind!%%<nul
  25. set /p=<nul
  26. for /l %%i in (1 1 1000) do ver>nul
  27. )
  28. call :texiao
  29. color 1f
  30. mode con: cols=90 lines=35
  31. echo CMD-BAT
  32. set ",=0123456789"&set "hanghao=12"
  33. for /l,%%a,in,(1,1,20),do,set "k= !k!"
  34. for /f,"tokens=1* delims=:" %%a,in,('findstr /n .* "%~0"'),do,(
  35.   if,%%a,leq,%hanghao%,(set _%%a=%%b))
  36. set "_1=%k%批处理之家  bbs.bathome.net  欢迎您"
  37. set "_2=          网址:bbs.bathome.net"
  38. set "_2=!_2!    群号:43011867    站长:youxi01"
  39. for /l,%%a,in,(1,1,%hanghao%),do,(
  40.   set "]=0"
  41.   for /l,%%i,in,(0,1,100),do,(
  42.     (set /=!_%%a!)
  43.     if,not,"!_%%a:~%%i,1!"=="",(set /a]+=1)
  44.   )
  45.   call :lis
  46.   if %%a equ 2 echo.
  47. )
  48. echo\&echo\&echo\
  49. set/p=         ────    批处理之家  bbs.bathome.net     <nul
  50. endlocal&color 1a
  51. set _=0&set ")=                "&set "(=欢迎您的加入 !!!"
  52. set "T="
  53. :loop
  54. set/p=%(%<nul
  55. if,%_%,geq,500,echo.&echo.&echo.&pause&exit
  56. set/p=%T%<nul
  57. for /l,%%i,in,(1,1,1500),do,ver>nul
  58. set (=%)%&set ")=%(%"&set/a "_+=1"
  59. goto loop
  60. :lis
  61. echo\&echo\&set/p=     <nul
  62. set /a "\=!]:~0,1!"
  63. set/a?=1/(1/!]:~-1!)2>nul||(set "/=!/! ")
  64. set/a?=1/(10/])2>nul&&(set \=1&set:=1)||(set:=0)
  65. for /l,%%a,in,(!:! 1 !\!),do,(
  66. set "{="
  67. if,%%a,equ,!\!,(set }=!]:~-1!),else,(set }=9)
  68. for /l,%%i,in,(0 1 !}!),do,(set {=!{!%%i)
  69. call :xs)
  70. goto :eof
  71. :xs
  72. for /l,%%k,in,(0 1 !}!),do,(
  73. call,call,call,set /p=%%%%%%%%/:~%%%%{:~%%,:~%%k,1%%,1%%%%,1%%%%%%%%<nul
  74. for /l,%%i,in,(1,1,200),do,ver>nul)
  75. set /a "sq=}+1"
  76. call,set "/=%%/:~!sq!%%"
  77. goto :eof
  78. :texiao 以下代码核心思路,作者:泛滥棏慌
  79. set p1= 5 1 4 1 4 1 b 5 1 4 1 4 1 b 1 4 2 1 4 1 b 5 1 4 1 4 1 2 1 b 5 1 4 2 2 2 b 5 2 2 1 4 1 b 1 3 4 1 4 1 b 5 1 4 1 4 1 b 5 1 4 1 2 2 2 1 b 5 1 4 2 2 1 2 1 b 1 3 4 1 4 3 b
  80. set p2=5 1 4 1 4 1 10 1 8 1 b 5 1 4 1 4 1 10 1 8 1 b 1 4 2 1 4 1 10 4 2 1 b 5 1 4 1 4 1 2 1 6 1 4 1 2 2 b 5 1 4 2 2 2 6 1 6 1 2 1 2 1 b 5 2 2 1 4 1 8 1 4 1 4 1 4 1 b 1 3 4 1 4 1 6 1 2 1 2 1 4 1 b 5 1 4 1 4 1 12 1 6 1 b 5 1 4 1 2 2 2 1 8 1 6 1 b 5 1 4 2 2 1 2 1 6 1 2 2 2 1 b 1 3 4 1 4 3 2 2 8 5 b
  81. set p3= 5 1 4 1 4 1 10 1 8 1 16 7 b 5 1 4 1 4 1 10 1 8 1 8 5 4 1 4 1 b 1 4 2 1 4 1 10 4 2 1 12 1 2 7 b 5 1 4 1 4 1 2 1 6 1 4 1 2 2 10 1 2 1 4 1 4 1 b 5 1 4 2 2 2 6 1 6 1 2 1 2 1 4 5 4 1 4 1 b 5 2 2 1 4 1 8 1 4 1 4 1 4 1 6 1 2 7 b 1 3 4 1 4 1 6 1 2 1 2 1 4 1 12 1 8 1 b 5 1 4 1 4 1 12 1 6 1 12 1 4 5 b 5 1 4 1 2 2 2 1 8 1 6 1 12 2 6 1 b 5 1 4 2 2 1 2 1 6 1 2 2 2 1 8 2 10 1 b 1 3 4 1 4 3 2 2 8 5 8 8 b
  82. set p4= 5 1 4 1 4 1 10 1 8 1 16 7 10 1 b 5 1 4 1 4 1 10 1 8 1 8 5 4 1 4 1 12 1 b 1 4 2 1 4 1 10 4 2 1 12 1 2 7 2 9 b 5 1 4 1 4 1 2 1 6 1 4 1 2 2 10 1 2 1 4 1 4 1 16 1 b 5 1 4 2 2 2 6 1 6 1 2 1 2 1 4 5 4 1 4 1 14 1 b 5 2 2 1 4 1 8 1 4 1 4 1 4 1 6 1 2 7 12 1 b 1 3 4 1 4 1 6 1 2 1 2 1 4 1 12 1 8 1 16 1 b 5 1 4 1 4 1 12 1 6 1 12 1 4 5 10 1 b 5 1 4 1 2 2 2 1 8 1 6 1 12 2 6 1 12 1 b 5 1 4 2 2 1 2 1 6 1 2 2 2 1 8 2 10 1 8 2 2 1 b 1 3 4 1 4 3 2 2 8 5 8 8 10 7 b
  83. set p5=5 1 4 1 4 1 10 1 8 1 16 7 10 1 24 1 b 5 1 4 1 4 1 10 1 8 1 8 5 4 1 4 1 12 1 14 10 b 1 4 2 1 4 1 10 4 2 1 12 1 2 7 2 9 6 2 16 1 b 5 1 4 1 4 1 2 1 6 1 4 1 2 2 10 1 2 1 4 1 4 1 16 1 12 7 b 5 1 4 2 2 2 6 1 6 1 2 1 2 1 4 5 4 1 4 1 14 1 16 1 2 1 6 1 b 5 2 2 1 4 1 8 1 4 1 4 1 4 1 6 1 2 7 12 1 16 1 4 1 4 1 b 1 3 4 1 4 1 6 1 2 1 2 1 4 1 12 1 8 1 16 1 14 2 4 1 2 2 b 5 1 4 1 4 1 12 1 6 1 12 1 4 5 10 1 22 1 2 2 2 1 b 5 1 4 1 2 2 2 1 8 1 6 1 12 2 6 1 12 1 20 2 2 1 2 1 4 1 b 5 1 4 2 2 1 2 1 6 1 2 2 2 1 8 2 10 1 8 2 2 1 20 2 4 1 6 1 b 1 3 4 1 4 3 2 2 8 5 8 8 10 7 2 2 4 3 b
  84. cls&color 0a
  85. for /l %%b in (1 1 5) do (
  86. set /a kuandu+=24
  87. mode con: cols=!kuandu! lines=15
  88. echo\&echo\
  89. for %%a in (!p%%b!) do (
  90.   if "%%a"=="b" (echo.&set pd=) else (
  91.     if not defined pd (set ff= &set pd=a) else (set ff=▓&set pd=)
  92.     for /l %%i in (1 1 %%a) do set abc=!abc!!ff!
  93.     set /p=!abc!<nul
  94.     for /l %%l in (1 1 100) do ver>nul
  95.     set abc=
  96. ))
  97.     ping/n 3 127.1>nul
  98. )
  99. goto :eof
复制代码

[ 本帖最后由 随风 于 2007-12-3 17:45 编辑 ]
1

评分人数

技术问题请到论坛发帖求助!

TOP

以在顶楼更新,并增加了功能相同的 “易懂” 代码,
诸位再看看。?
技术问题请到论坛发帖求助!

TOP

最初也是用的这种特效。
但是发现 mode 每运行一次,都有一个 cls 的效果.
不知namejm 说的是用在哪个特效上?
如果是用在 批处理之家  这几个字上的话,那么屏幕是否会太高了?
能否给出具体的特效代码?
技术问题请到论坛发帖求助!

TOP

好注意。
已在顶楼更新,
增加了颜色变换,和cmd窗口尺寸逐渐变换功能。
技术问题请到论坛发帖求助!

TOP

若改为一直放大或缩小,窗口的底边会一直跳动,给人很不舒服的感觉。
技术问题请到论坛发帖求助!

TOP

返回列表