Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
vbs调用批处理_运行脚本的软件,希望能够帮助你!!!。
使用Windows脚本来调批处理
一个非常简单的小脚本
假设你的批处理是C:\xxx.bat
那么在记事本里写入
set ws=WScript.CreateObject("WScript.Shell")
ws.Run "C:\xxx.bat",0
保存为一个以vbs为扩展名的文件
运行它就可以在后台运行你的批处理了,BAT批处理文件的后台运行不弹出窗口
批处理隐藏运行的10种思路
1.基础
HideRun.vbs
--------------------------------------------------------------------------------
CreateObject("WScript.Shell").Run "cmd /cD:\test.bat",0
其中D:\test.bat是你的批处理路径
HideRun.bat
--------------------------------------------------------------------------------
echo CreateObject("WScript.Shell").Run "cmd /cD:\test.bat",0>$tmp.vbs
cscript.exe /e:vbscript $tmp.vbs
del $tmp.vbs
这个批处理其实不能使其批处理本身隐藏,但是下面大部分隐藏调用批处理的原理和基础。
HideRun.js
--------------------------------------------------------------------------------
new ActiveXObject('WScript.Shell').Run('cmd /cD:\Test.bat',0);
用Javascript有什么好处呢?js的字符串变量可以用单引号,从而方便命令行作为参数调用,而且js很好的支持多行语句用 ; 分隔写成一行。要注意的是:js要区分大小写,方法必须用括号,结尾必须有分号。所以就成了下面的命令:
--------------------------------------------------------------------------------
mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /cD:\test.bat',0);window.close()"
2.用快捷方式
如果要使一个批处理本身隐藏,可以参考附件里的一个快捷方式,修改附件中的相关路径即可隐藏启动你的批处理。可以用vbs来建立一个 .lnk,其实用批处理也行(先echo一个vbs出来)
3.利用系统服务
可以用sc建立一个系统服务然后启动这个服务来启动批处理。缺点是启动服务较慢,需要管理员权限
查考这个帖子,
http://www.cn-dos.net/forum/view ... =%E6%9C%8D%E5%8A%A1
asbai 兄的大作,极大的方便了我们的使用。
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
runassrv add /cmdline:"C:\Windows\System32\cmd.exe /cD:\test.bat" /name:"mysrv"
net start mysrv
4.利用
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章