Saltar al contenido

Cómo ejecutar cmd.exe con parámetros de javascript

Queremos regalarte la mejor información que encontramos en internet. Nosotros queremos que te resulte útil y si quieres aportar algo que nos pueda ayudar a crecer hazlo libremente.

Solución:

Tal vez no tenga este control ActiveX instalado (o registrado) en su computadora.

WScript.Shell debe encontrarse en cada Windows:

var run=new ActiveXObject('WSCRIPT.Shell').Run("commands to run");

Si hay espacios en commands to rundebe usar comillas dobles.

Editar

El contenido a continuación proviene principalmente de MSDN: http://msdn.microsoft.com/en-us/library/windows/desktop/gg537745(v=vs.85).aspx

iRetVal = Shell.ShellExecute(
  sFile,
  [ vArguments ],
  [ vDirectory ],
  [ vOperation ],
  [ vShow ]
)

Echemos [vDirectory]. La documentación dice: “El totalmente calificado path of the directory que contiene el archivo especificado por sFile. Si no se especifica este parámetro, se utiliza el directorio de trabajo actual”.

Esto significa que tiene una ruta no válida para este argumento (que tiene .cmd.exe al final de la misma). Además, todos los ejemplos para crear ActiveX son así:

var objShell = new ActiveXObject("shell.application");

Observe las minúsculas en "shell.application".

Y May12, gracias por preguntar esto. No conocía antes este control ActiveX, me parece muy útil.

EDITAR II

¿Pero lo has entendido? Tu ejemplo funciona perfecto en mi aplicación:

objShell.ShellExecute("cmd.exe", "cd C: C:\cd c:\ext_file main.exe test.txt", "C:\WINDOWS\system32", "open", 1);

Con tres excepciones:

1) El que mencioné al principio de esta respuesta sobre el camino

2) Escapó usado también en argumentos.

3) El último argumento es tipo de número, no un string.

Sección de Reseñas y Valoraciones

Al final de todo puedes encontrar las crónicas de otros desarrolladores, tú todavía puedes mostrar el tuyo si te gusta.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *