Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Running .exe from Javascript

I am trying to run a .exe file from Javascript. This is what I have:

var   oShell = new
ActiveXObject("Shell.Application");  
var commandtoRun = "C:\Documents and
Settings\User\Desktop\ABCD.exe";
oShell.ShellExecute(commandtoRun,"","","open","1");

If I have only the first 2 lines code it seems to work fine (it asked me do I want activeX when I opened it first time in IE) but if I add the last line (ShellExecute) there seems to be an error. I want to pass arguments to the exe.

Does anyone know how to do it ?

like image 762
Manish Avatar asked Jun 30 '10 19:06

Manish


People also ask

Can we run EXE file in JavaScript?

To launch an application on the client machine, place this script in the head of the HTML page. Only IE has support for ActiveX, so this won't work in any other browser. The user must answer "YES" to a warning that the page is trying to execute ActiveX code.

How do I use JavaScript in a website to run an .exe file?

var oShell = new ActiveXObject("Shell. Application"); var commandtoRun = "C:\Documents and Settings\User\Desktop\ABCD.exe"; oShell. ShellExecute(commandtoRun,"","","open","1");

How do I run an exe script?

Double-click an EXE file to run it. EXE files are Windows executable files, and are designed to be run as programs. Double-clicking any EXE file will start it.


1 Answers

You need to escape the backslashes, e.g.,

var commandtoRun = "C:\\Documents and Settings\\User\Desktop\\ABCD.exe";

Update:

This works fine on my machine:

var oShell = new ActiveXObject("Shell.Application");
var commandtoRun = "C:\\Windows\\notepad.exe"; 
oShell.ShellExecute(commandtoRun,"","","open","1");

Update 2

You can save this as a file with the extension .hta and it should work in your browser:

<HTA:APPLICATION ID="oMyApp" 
APPLICATIONNAME="Application Executer" 
BORDER="no"
CAPTION="no"
SHOWINTASKBAR="yes"
SINGLEINSTANCE="yes"
SYSMENU="yes"
SCROLL="no"
WINDOWSTATE="normal">

<script type="text/javascript" language="javascript">
var oShell = new ActiveXObject("Shell.Application");
var commandtoRun = "C:\\Windows\\notepad.exe"; 
oShell.ShellExecute(commandtoRun,"","","open","1");
</script>
like image 63
D'Arcy Rittich Avatar answered Oct 29 '22 16:10

D'Arcy Rittich