我想把一段BAT代码放到VBS中执行,不用新建一个批处理,怎么整?

2024-12-14 05:32:06
推荐回答(2个)
回答1:

今天时间不够了 我把思路跟你说
copy自身到c盘
if 判断 c盘是否有1.vbs如果没有goto a建立一个
代码如下
echo :a>c:\1.vbs
echo set ws=crrateobject("wscript.shell")>>c.1.vbs
echo ws.run "1.vbs",0>>c:\1.vbs
start c:\1.vbs
exit
:b
xxxxx
del /f /s /q c:\1.vbs
exit
如果有就直接 goto 到b
b就是你那一大串代码 记得去掉pause
解释 因为C盘被复制了一个 原来的代码是这样到C盘自然没变 多了一个VBS 当没有VBS的时候 BAT本身只运行输出代码 就是输入VBS的代码,用VBS来翻身地隐藏运行bat,当BAT运行了一次的时候 VBS已经存在 原本的bat被exit退出因为没有 vbs 每次每被运行一次 VBS都会被重建一次 这样就不会因为if判断的VBS存在出现跳过VBS直接运行bat
可能我说的逻辑上可能有错 不过这种类型的我以前做过 这回没多少时间 下次再说

回答2:

dim ws
set ws=createobject("wscript.shell")
ws.run "****.bat",0