admin管理员组文章数量:1794759
利用Bat打开exe程序并传入值
目录
一、分清楚exe接收值的方式
1、打开exe时提示输入1、2、3...
2、知道exe形参(程序主函数中定义的argv[])
二、call和start的区别
一、分清楚exe接收值的方式 1、打开exe时提示输入1、2、3...
如图:
这种是程序运行时接收用户输入参数,如果是Bat写的程序就是像:set /p a=,或者c语言中的scanf、gets等,所以要想自动化输入只能用模拟键盘的方式
通过VBS:
echo set wshshell=CreateObject("Wscript.shell") > 1.vbs echo wshshell.run "(这里填提示输入数值exe的路径)">> 1.vbs echo wscript.sleep 1000>> 1.vbs echo wshshell.sendkeys "(这里填你要输入的数值)">> 1.vbs echo wshshell.sendkeys "{enter}">> 1.vbs echo wscript.quit>> 1.vbs call 1.vbs 2、知道exe形参(程序主函数中定义的argv[])如果你知道exe程序是需要用到argv[]中的参数的话,则可以利用call和start来实现
通过call:
主要命令格式
【FileName 参数】
指定的要调用的文件,该文件必须是批处理文件或执行文件
【Pararneters参数】
指定调用 FileName 时传递的参数 ,多个参数使用空白分隔
::一个参数 call test.bat 1 ::多个参数 call test.bat 1 2 3通过start命令:
::一个参数 start test.bat 1 ::多个参数 start test.bat 1 2 3 二、call和start的区别start是开启一个新的进程,所以start后的程序就和父程序没瓜葛了
call是在父程序中调用一个子程序,所以需要等待子程序执行完才会跳回父程序继续执行下面的命令
-----------------------------------------------------------------我是分割线--------------------------------------------------------------
看完了觉得不错就点个赞或者评论下吧,感谢!!!
如果本文哪里有误随时可以提出了,收到会尽快更正的
版权声明:本文标题:利用Bat打开exe程序并传入值 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686800436a104553.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论