我试图在Visual Studio中编译我的.net应用程序之前,从ant脚本执行iisvdir以清理并创建一个虚拟目录。我遇到了一个构建服务器的奇怪错误,但另一个运行脚本没有任何问题。Ant命令行帮助:iisvdir
<exec dir="${SYSTEM32}" executable="cscript" failonerror="true">
<arg line='iisvdir.vbs /create "Default Web Site" ${RS_VIRTUAL_DIR} "${env.WORKSPACE}"'/>
</exec>
结果:
[exec] Microsoft (R) Windows Script Host Version 5.6
[exec] Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.
[exec]
[exec] Input Error: Can not find script file "c:\windows\system32\iisvdir.vbs".
然后在
[exec] 'reate' is not recognized as an internal or external command,
[exec] operable program or batch file.
<exec dir="${SYSTEM32}" executable="cmd" failonerror="true">
<arg line='cscript iisvdir.vbs /create "Default Web Site" ${RS_VIRTUAL_DIR} "${env.WORKSPACE}"'/>
</exec>
结果有人可以帮我找出什么可能是错了吗?
是的,iisvdir肯定是在system32文件夹中。/c被混淆为一个参数的问题正是发生了什么。而且我无法找到解决方法来执行我需要的操作。有什么想法吗? – galuvian 2010-07-09 15:30:25
这是一个64位操作系统,但我的默认jvm是32位。我还应该补充说,我能够成功地调用“cmd cscript iisvdir.vbs”来删除数据集,但是由于/ c对cmd有些意义,它会扼杀/创建数据集。 – galuvian 2010-07-09 20:36:11
是的,所以运行'cmd/c cscript iisvdir.vbs /创建等...' – 2010-07-10 12:10:35