2010-06-30 15 views
13

Javascript'ten bir .exe dosyasını çalıştırmaya çalışıyorum. Bu benim ne var:Javascript'ten .exe çalışan

var oShell = new ActiveXObject ("Shell.Application");
var commandtoRun = "C: \ Belgeler ve Ayarlar \ Kullanıcı \ Masaüstü \ ABCD.exe"; oShell.ShellExecute (commandtoRun, "", "", "open", "1"); Ben sadece ilk 2 satır kod varsa

o iyi iş gibi görünüyor (bana ben o IE ilk kez açıldığında ActiveX'i istiyorsun sordu) ama (ShellExecutehttp) son satırı eklerseniz görünüyor bir hata ol. Ben argümanlar exe geçmek istiyorum.

Bunu nasıl yapacağını bilen var mı?

+1

bulundu Biraz arama bu - http://www.dotnetspider.com/resources/19547-Run-exe-file-Java -Script.aspx – JasCav

+1

Bir virüs veya ne yapıyorsunuz? :) –

cevap

14

Sen, mesela tersbölüler kaçmak gerekir

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

Güncelleme:

Bu benim makine üzerinde çalışıyor:

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

Güncelleme 2

Sen yapabilirsin uzantılı .hta bir dosya olarak bu ettik ve tarayıcınızda çalışması gerekir:

<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> 
+0

Ayrıca: @ Jason'ın linki, boşluklardan kaçmak ve şu biçimi kullanarak% 20 kullanılmasını önerir: file: /// C: /Program%20Files/...etc - belki de bunun üzerinde bir çeşitlilik var mı? –

+0

@Red Süzgeç: -Bu zaten göndermeden önce denedim ... – Manish

+0

Yine de uppdate'ime bakın. – RedFilter