I am trying to write javascript which should run cmd.exe with a specified command line in it like this docs.google.com/file/d/0B7QHCoQDlEvKWUZSX3oxUDI2SDg/edit:
I prepare a code after reading shellexecute method on microsoft site:
var objShell = new ActiveXObject("Shell.Application");
objShell.ShellExecute("cmd.exe", "C: cd C:\\pr main.exe blablafile.txt auto", "C:\\WINDOWS\\system32", "open", "1");
but it does not insert command line in cmd.exe.
Could anybody help me? Thank you in advance.
Maybe you don't have this ActiveX-control installed (or registered) in your computer.
WScript.Shell
should be found in every Windows:If there are spaces in
commands to run
, you need to use double quotes.Edit
The content below is mainly from MSDN: http://msdn.microsoft.com/en-us/library/windows/desktop/gg537745(v=vs.85).aspx
Let's take
[vDirectory]
. The documentation says: "The fully qualifiedpath of the directory
that contains the file specified by sFile. If this parameter is not specified, the current working directory is used."This means that you have an invalid path for this argument (having
.cmd.exe
at the end of it). Also all examples for creating the ActiveX are like this:Notice the lowercase in
"shell.application"
.And May12, thank's for asking this. I didn't know about this ActiveX control before, it seems to be very useful to me.
EDIT II
But have you understood it? Your example works perfect in my app:
With three exceptions:
1) The one I mentioned early in this answer about the path
2) Escaped
\
used also in arguments.3) The last argument is type of number, not a string.
is usable