标题:
[其他]
bat单独运行和用winrar封装后运行结果不同
[打印本页]
作者:
zhangf189
时间:
2017-9-28 15:57
标题:
bat单独运行和用winrar封装后运行结果不同
大家好,我这边有几个补丁和exe文件,搞了个bat文件,将所有文件执行命令写入其中,单独运行bat文件会把所有补丁和exe都安装好,我现在用winrar进行了封装,调用的是bat,而后为了实现全隐藏,我这边写了一个简单的VBS执行文件,里面就是简单的去调用bat文件。这样双击vbs后实现不出现任何画面,程序全部装好。但通过vbs去调用bat这种方法,只会执行第一条命令 后面的命令不执行,但单独运行bat完全没问题,想问问大神们是什么原因
作者:
Batcher
时间:
2017-9-28 21:36
vbs和bat完整代码发出来看看
作者:
窄口牛
时间:
2017-9-28 22:13
给你个谜语猜,你倒是猜吧,还问上了?
作者:
zhangf189
时间:
2017-9-29 09:21
回复
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不应该都是系统自带的么 还是说路径有问题
作者:
WHY
时间:
2017-10-2 11:58
有可能 WinRAR 为 32 位版本而非 64 位版本,这样制作的自解压文件会调用 SysWOW64 中的 DISM
可以试试在代码适当位置加上 cd /d %windir%\system32
作者:
kingshui
时间:
2017-10-3 14:29
目测路径问题...这种调用的最好不要用%~dp0.....
用echo pause调试下看看路径对不? 最好先pushd %~dp0吧.
欢迎光临 批处理之家 (http://bathome.net./)
Powered by Discuz! 7.2