出于某种原因,当我使用带有-d选项的PSEXEC时,我的脚本将开始执行,然后在远程计算机上失败。如果我不使用-d选项,脚本将在远程计算机上正确执行。此外,如果我在远程计算机上手动启动脚本,它将正确执行。
psexec正在从一个vbscript启动,而psexec的实例在远程机器上启动了另一个vbscript。这是我的启动字符串:
returnError = runCommandLine(psexecPath & " \\" & machine & " -d -u " & username & " -p " & password & " cscript \\servername\DHCPEnabler$\DHCPEnabler.vbs" & " /machineip:" & machine)
使用-d选项时,脚本DHCPEnabler.vbs会在远程计算机上执行但在运行中途失败
这是我的DHCPEnabler.vbs脚本http://www.pastebin.ca/2640148 似乎失败的地方就在附近
errdns = myshell.run("netsh interface ip set dns " & chr(34) & wmiItem.NetConnectionID & chr(34) & " dhcp" , 0, true)
errwins = myshell.run("netsh interface ip set wins " & chr(34) & wmiItem.NetConnectionID & chr(34) & " dhcp" , 0, true)
errdhcp = myshell.run("netsh interface ip set address " & chr(34) & wmiItem.NetConnectionID & chr(34) & " dhcp" , 0, true)
任何帮助将不胜感激
答案 0 :(得分:0)
我会尝试将%COMSPEC%/ C添加到命令行的开头。像这样:
returnError = runCommandLine(psexecPath & " \\" & machine & " -d -u " &_
username & " -p " & password &_
" %COMSPEC% /C cscript \\servername\DHCPEnabler$\DHCPEnabler.vbs" &_
" /machineip:" & machine)