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

[其他] bat单独运行和用winrar封装后运行结果不同

大家好,我这边有几个补丁和exe文件,搞了个bat文件,将所有文件执行命令写入其中,单独运行bat文件会把所有补丁和exe都安装好,我现在用winrar进行了封装,调用的是bat,而后为了实现全隐藏,我这边写了一个简单的VBS执行文件,里面就是简单的去调用bat文件。这样双击vbs后实现不出现任何画面,程序全部装好。但通过vbs去调用bat这种方法,只会执行第一条命令 后面的命令不执行,但单独运行bat完全没问题,想问问大神们是什么原因

目测路径问题...这种调用的最好不要用%~dp0.....
用echo  pause调试下看看路径对不? 最好先pushd %~dp0吧.

TOP

有可能 WinRAR 为 32 位版本而非 64 位版本,这样制作的自解压文件会调用 SysWOW64 中的 DISM
可以试试在代码适当位置加上 cd /d %windir%\system32

TOP

回复 2# Batcher


bat代码
@echo on
for /r "%~dp0" %%c in (Windows6.1-*.msu) do start /wait wusa "%%c" /quiet /norestart
dism /Online /Add-Package /PackagePath:"%~dp0IE-Win7.CAB" /quiet /norestart
dism /Online /Add-Package /PackagePath:"%~dp0ielangpack-zh-CN.CAB" /quiet /norestart
start /wait wusa "%~dp0IE-Spelling-en.MSU" /quiet /norestart
start /wait wusa "%~dp0IE-Hyphenation-en.MSU" /quiet /norestart


vbs代码
set ws=createobject("wscript.shell")
ws.run "IE11X86.bat",0

现在发现bat代码会运行for后面的一条语句  从dism开始就不运行了   现在发现报错了  因为我是64位系统   运行到dism这行就报“无法使用32位版本的dism为正在运行的64位操作系统服务”
这个dism不应该都是系统自带的么  还是说路径有问题

TOP

给你个谜语猜,你倒是猜吧,还问上了?

TOP

vbs和bat完整代码发出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表