2011-03-26 108 views
0

我有一个VBS文件'migration.vbs',它运行许多命令,然后调用AutoIt.exe文件开始卸载产品。当您通过命令行自行调用“cscript migration.vbs”时,整个脚本运行成功。批处理文件调用调用EXE的VBScript不会打开

此脚本将被推送到其他技术人员需要能够双击的其他机器运行它。许多机器在双击时默认不执行VBS,所以我添加了一个批处理文件来运行它。

问题是当批处理文件调用VBS时,它开始运行但从不调用exe。它只是跳过这一步。我猜这是嵌套系统调用或者我不知道的一个问题。

总之,任何解决方案?我宁愿不将EXE调用放在批处理文件中,因为逻辑检查VBS是否针对注册表项(在BAT中很难/不可能重复)。

再次感谢

的start.bat

START /WAIT cscript .\data\migration.vbs 

migration.vbs

WSHSHell.Run "uninstall.exe", 0, True 

回答

1

没有嵌套系统调用的限制,我猜的路径或当前目录是错误的,请尝试使用完整路径或监视​​文件系统调用Process Monitor

+0

有趣。路径是答案。显然,VBscript的工作目录被设置为批处理文件的工作目录,尽管它们位于单独的目录中。 – Zomgie 2011-03-26 00:40:55

相关问题