Я пытаюсь заставить VBSCript передать «configure call gcid splitArray (x) delete» для каждого элемента в массиве.Вместо этого я получаю «configure call gcid splitArray (x)» до последнего элемента, который вернется как «configure call gcid splitArray (x) delete».
Я кое-что новенькое в написании сценариев, заранее спасибо.
<head>
<title>Test</title>
<HTA:APPLICATION ID="Test"
APPLICATIONNAME="Test"
SCROLL="yes"
SINGLEINSTANCE="yes"
>
</head>
<script language="vbscript">
Sub ClearCalls
serv2 = editor.serv1.value
call2 = editor.call1.value
splitArray = Split(call2, chr(10), -1, 0)
set Shell = CreateObject("WScript.Shell")
shell.run "cmd.exe"
Delay 1
Shell.SendKeys "telnet -f c:\results.txt " & serv2 & ".com"
Shell.SendKeys "{ENTER}"
Delay 1
Shell.SendKeys "username"
Shell.SendKeys "{ENTER}"
Shell.SendKeys "password"
Shell.SendKeys "{ENTER}"
Shell.SendKeys "admin debugsonus"
Shell.SendKeys "{ENTER}"
For x = 0 To UBound(splitArray)
splitArray1 = "configure call gcid " & splitArray(x) & " delete"
Shell.SendKeys splitArray1
next
Shell.SendKeys "{ENTER}"
Delay 1
Shell.SendKeys "exit"
Shell.SendKeys "{ENTER}"
Delay 2
Shell.SendKeys "{ENTER}"
Shell.SendKeys "exit"
Shell.SendKeys "{ENTER}"
readfile
End Sub
Sub Delay( seconds )
Dim wshShell
Set wshShell = CreateObject( "WScript.Shell" )
wshShell.Run "ping -n " & ( seconds + 1 ) & " 127.0.0.1", 0, True
Set wshShell = Nothing
End Sub
</script>
<script language="JScript" type="text/jscript">
<!--
function readFile()
{
var fso, fileHandle, contents, resultvar;
fso = new ActiveXObject("Scripting.FileSystemObject");
fileHandle = fso.OpenTextFile(document.editor.resultvar.value, 1);
contents = fileHandle.ReadAll();
if (contents)
document.all("results").value = contents;
fileHandle.close();
}
//-->
</script>
<body>
<form name="editor">
<table>
<tr>
<td align="right">Server Name:</td>
<td><input type="text" size="18" id="serv1"></td>
</tr>
<tr>
<td align="right" valign="top">Calls:</td>
<td><textarea size="18" id="call1" rows="10"></textarea></td>
</tr>
<td valign="bottom" align="left" colspan="2">
<button type="submit" name="run_button" onClick="ClearCalls">Clear Calls</button>
</td>
<tr>
<td align="right" valign="top">Results:</td>
<td><textarea cols="80" rows="20" name="results" id="results" rows="10"></textarea></td>
</tr>
</table>
<td><input type="hidden" name="resultvar" value="c:\results.txt"></td>
</body>
Если я использую эти переменные в текстовой области, вызов1
asd
asd
asd
asd
asd
asd
sad
я получу следующее в результатах textarea
configure call gcid asd
ошибка: неполная команда.Ожидается одно из: DELETE
вызов deleteconfigure gcid asd
ошибка: неверное имя команды "deleteconfigure"
ошибка deleteconfigure gcid asd ошибка: недопустимое имя команды "deleteconfigure"
вызов deleteconfigure gcid asd
ошибка:неверное имя команды "deleteconfigure"
вызов deleteconfigure gcid asd
ошибка: неверное имя команды "deleteconfigure"
вызов deleteconfigure gcid asd
ошибка: неверное имя команды "deleteconfigure"
вызов deleteconfigure gcid sad delete
ошибка: неверное имя команды "deleteconfigure"