examples descargar caracteristicas vbscript

vbscript - descargar - subíndice fuera de rango<4,1>



vbscript virus (1)

El error proviene de VBScript, los dos argumentos indican qué línea y qué columna han desencadenado el error, en este caso, la línea 4 y la columna 1.

Entonces, el problema es probable (si este es todo el script fuente)

jenkins = WScript.Arguments.Item(3)

El error de Subscript Out of Range se traduce aproximadamente a, el índice de matriz actual que está pasando está más allá de los límites de la matriz.

Entonces la probabilidad es que no hay un argumento 4 que se aprueba (las matrices de VBScript son 0, entonces 3 es de hecho 4) .

Puede probarlo usted mismo con una pequeña modificación en el script para depurar la colección WScript.Arguments . Simplemente agregue el código a continuación a la parte superior de su secuencia de comandos.

Dim i For i = 0 To WScript.Arguments.Count - 1 WScript.Echo "Index " & i & " = " & WScript.Arguments.Item(i) Next

WScript.Arguments la lista WScript.Arguments y WScript.Arguments lo que está contenido en cada uno.

Probando con

cscript //nologo "test62.vbs" "SVNRepo" "Rev2" "C:/Program Files/VisualSVN Server/bin/svnlook.exe" http://localhost:8080/jenkins

Salida:

Index 0 = SVNRepo Index 1 = Rev2 Index 2 = C:/Program Files/VisualSVN Server/bin/svnlook.exe Index 3 = http://localhost:8080/jenkins

Estoy implementando el enganche post commit en svn repo para desencadenar la compilación de jenkins pero obteniendo una excepción que creo que está en el archivo commit.vb. Sé que esta es una pregunta tan simple, pero no he trabajado en vb así que no tengo idea. Siguiendo este tutorial - https://wiki.jenkins-ci.org/display/JENKINS/Subversion+Plugin . También me ayuda a especificar el trabajo específico que necesito activar. Asumo que con esta configuración se activarán todos los trabajos en jenkins.

post-commit.bat

SET REPOS=%1 SET REV=%2 SET CSCRIPT=%windir%/system32/cscript.exe SET VBSCRIPT=C:/Repositories/commit.vbs SET SVNLOOK=C:/Program Files/VisualSVN Server/bin/svnlook.exe SET JENKINS=http://localhost:8080/jenkins "%CSCRIPT%" "%VBSCRIPT%" "%REPOS%" %2 "%SVNLOOK%" %JENKINS% @pause

commit.vbs

repos = WScript.Arguments.Item(0) rev = WScript.Arguments.Item(1) svnlook = WScript.Arguments.Item(2) jenkins = WScript.Arguments.Item(3) Set shell = WScript.CreateObject("WScript.Shell") Set uuidExec = shell.Exec(svnlook & " uuid " & repos) Do Until uuidExec.StdOut.AtEndOfStream uuid = uuidExec.StdOut.ReadLine() Loop Wscript.Echo "uuid=" & uuid Set changedExec = shell.Exec(svnlook & " changed --revision " & rev & " " & repos) Do Until changedExec.StdOut.AtEndOfStream changed = changed + changedExec.StdOut.ReadLine() + Chr(10) Loop Wscript.Echo "changed=" & changed url = jenkins + "crumbIssuer/api/xml?xpath=concat(//crumbRequestField,"":"",//crumb)" Set http = CreateObject("Microsoft.XMLHTTP") http.open "GET", url, False http.setRequestHeader "Content-Type", "text/plain;charset=UTF-8" http.send crumb = null if http.status = 200 then crumb = split(http.responseText,":") end if url = jenkins + "subversion/" + uuid + "/notifyCommit?rev=" + rev Wscript.Echo url Set http = CreateObject("Microsoft.XMLHTTP") http.open "POST", url, False http.setRequestHeader "Content-Type", "text/plain;charset=UTF-8" if not isnull(crumb) then http.setRequestHeader crumb(0),crumb(1) http.send changed if http.status <> 200 then Wscript.Echo "Error. HTTP Status: " & http.status & ". Body: " & http.responseText end if end if