Board logo

标题: [原创]BAT与HTML混合编程 [打印本页]

作者: s11ss     时间: 2008-4-22 11:53    标题: [原创]BAT与HTML混合编程


:<!--
::::::::::::::::::::::::::::::::BAT::::::::::::::::::::::::::::::::

::::::::1.执行HTML代码之前的BAT代码::::::::
@echo off
call :e Starting mshta...
pause
::::::::1.执行HTML代码之前的BAT代码::::::::

::执行HTML代码:
start mshta %0

::::::::2.执行HTML代码之后的BAT代码::::::::
call :e Mshta is executing HTML codes...
pause
::::::::2.执行HTML代码之后的BAT代码::::::::

::退出BAT:
exit/b

:::::::BAT函数定义部分:::::::
:e
echo %*
goto :eof
:::::::BAT函数定义部分:::::::

::::::::::::::::::::::::::::::::BAT::::::::::::::::::::::::::::::::
-->

<!--此句用来清除第一行的:-->
<script>document.body.innerText=""</script>

<!--------------------------HTML-------------------------->
<body onkeypress=window.close()>
<hr color=red>
<marquee><font color=green>HTML Codes</font></marquee>
<hr color=red>
<!--------------------------HTML-------------------------->

<!--        BAT & HTML        {s11ss@www.cn-dos.net/forum 2008-4-22}
思路:当此文件被当作BAT文件执行时,未执行到HTML代码部分时就已退出;
      当此文件被当作HTML文件执行时,BAT代码部分被注释,不会被执行。
-->
[ Last edited by s11ss on 2008-4-22 at 11:55 AM ]
作者: knoppix7     时间: 2008-4-22 12:14
好东西...
...JS/VBS/HTML/BAT ALL IN one的感觉..........
作者: HAT     时间: 2008-4-22 12:16
好东西,收藏。
作者: plp626     时间: 2008-4-22 12:49
高产的”作家“
我现在怀疑楼主是原来某位版主的马甲,大家可否有同感?
作者: huahua0919     时间: 2008-4-22 13:39
S11SS懂得还真多,大概总结下有:
vbs
js
bat
汇编
Html
还有基于GUI的程序不知道是JAVA 还好C等
而且根底都很扎实
佩服佩服!
作者: learner0     时间: 2008-4-22 19:16
有创意,值得学习
作者: scriptor     时间: 2008-4-22 19:53


  Quote:
Originally posted by s11ss at 2008-4-22 11:53:
[code]:<!--
::::::::::::::::::::::::::::::::BAT::::::::::::::::::::::::::::::::

::::::::1.执行HTML代码之前的BAT代码::::::::
@echo off
call :e Starting mshta...
pause
::::::::1.执 ...

你真强,我算是找到我一直以来要实现的了!!
先顶你在实验一下!!

ps: 鬼晓得你是怎么想到的! 哈哈哈~~
哎,又很久没来了,来了我也是观花!

看到很好的我就要赞一下, 看到不好的我也要砍一下!
哈哈哈~~~
加油啊~~
作者: scriptor     时间: 2008-4-22 19:53


  Quote:
Originally posted by plp626 at 2008-4-22 12:49:
高产的”作家“
我现在怀疑楼主是原来某位版主的马甲,大家可否有同感?

呵呵~你是菜菜!!
作者: scriptor     时间: 2008-4-22 19:55


  Quote:
Originally posted by s11ss at 2008-4-22 11:53:
[code]:<!--
::::::::::::::::::::::::::::::::BAT::::::::::::::::::::::::::::::::

::::::::1.执行HTML代码之前的BAT代码::::::::
@echo off
call :e Starting mshta...
pause
::::::::1.执 ...

给你加我的最高分: 15

基本不记得加分的功能啊!! 这次先给你加加~~
:)
作者: scriptor     时间: 2008-4-22 20:01
好,测试过了,有个想法::

我想说的是: 能不能在<html  code segment > 内,加入 bat命令, 当然不是说使用
object.run (xxxx) 之类的!

或者有什么变通的办法么?

---------

我的这个想法 是不是 不可能实现啊?
作者: plp626     时间: 2008-4-22 20:49
我一直是菜菜。

就楼主这个帖来说,其思想就是把VBS混合编程的思想用到html语言上,只是大家的知识面没有楼主那么宽(像我不是学计算机的,现在就懂个BAT,但我好学!)
随便举个混合编程的例子,来表达(我就懂点点VBS)楼主此贴的思想:
' 2>nul 3>nul&@echo off&cls
'&start wscript.exe /nologo /e:vbs %0&exit
createobject("sapi.spvoice").speak("ger lee shir joan gwaur DOS lieng merng")
msgbox "这里是中国DOS联盟!",,"Welcome"
原帖:http://www.cn-dos.net/forum/view ... ge=1&highlight=

不同与此贴的仅仅是此贴用的是mshta来把bat的代码当作html语言来解释,不知楼主,我说的对不对?

将楼主的代码精简,方便大家理解思想:
:<!--

@rem /* ---------- bat代码部分 ------------------------
@echo off
echo 这里随便写代码,
echo 下面将启动html了
pause
::-----------下面这句 将bat代码当作html语言来解释,
start mshta %0
exit::记得退出cmd
rem ------------------------------------------------ */

现学现用:(我刚从楼主的帖子里学到的)

在html语言里注释就是 <!-- ..(可以换行)... -->
由此看来当mshta解释这个bat代码时候,从第一句到下面这句之间的部分被跳过。

由此看来次代码和<%0 more +? >tmp.html相比一大优点就是没有生成临时文件.

-->

<!--此句(就是下面script那就)用来清除第一行的(这不,又学到了如何清除第一行的html语句)
   我来解释为什么要添这句
   如果第一句开头没有冒号bat将因语法错误直接跳出,
   加上后当mshta读取代码是第一个:会留下,为了再丢掉就得用下面的语句


--------我的上面全是html的注释-------我的下面就是正二八经的html语句了------->


<script>document.body.innerText=""</script>

<body onkeypress=window.close()>
<hr color=red>
<marquee><font color=green>HTML Codes</font></marquee>
<hr color=red>
[ Last edited by plp626 on 2008-4-28 at 07:36 PM ]
作者: dslz666     时间: 2008-4-23 08:09
第一次碰到。高,厉害。学习了
作者: binghehan100     时间: 2008-4-23 16:52
厉害
作者: rzwwj1     时间: 2008-4-23 20:07
『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害

『第 14 楼』:  

厉害
作者: cctv8068     时间: 2008-4-24 17:28
谢谢。不错的思路。
作者: matlan     时间: 2009-6-21 14:23
太厉害了
作者: wuxj     时间: 2009-6-23 09:07
专程过来学习的。
作者: xiaopo     时间: 2015-8-23 09:56
留名,学习了,谢谢。
作者: x1x1h     时间: 2016-11-19 11:37
厉害了,膜拜一下。