2010-11-18 16 views
2

Ich möchte CMD-Fenster von meiner Webseite (HTML) öffnen. Ich benutze JS, aber etwas stimmt nicht, denn wenn ich drücke, wird die Funktion nicht aufgerufen.Ausführen cmd aus dem Browser - von JS

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<script type="text/javascript"> 
<!-- 
function runCmd(command, option) 
{ 
    var char34 = String.fromCharCode(34); 
    var wsh = new ActiveXObject('WScript.Shell'); 
    if (wsh) 
    { 
     command = 'cmd /k ' + char34 + wsh.ExpandEnvironmentStrings(command) + ' '; 
     command = command + char34 + wsh.ExpandEnvironmentStrings(option) + char34 + char34; 
     if (confirm(command)) 
     { 
      wsh.Run(command); 
     } 
    } 
} 
//--> 
</script> 
</head> 

<body> 

<input type="button" value="Run!" onclick="runCmd(‘notepad.exe’, ‘%programfiles%\file.txt’);" /> 
</body> 
</html> 

EDIT: Ich speicherte es als PHP, und ich habe jetzt einen Fehler in FF:

ActiveXObject is not defined 
[Break on this error] var wsh = new ActiveXObject('WScript.Shell'); 

Thank you!

+0

In welchem ​​Browser? Sie verwenden IE und die Seite ist in einer vertrauenswürdigen Website, richtig? (Oder was auch immer benötigt wird, damit IE potentiell gefährliche Sachen ausführt) –

+0

in IE und FF ... Ja, vertrauenswürdige Website. – Ronny

+3

Und Sie, dass 'eval()' war böse ... –

Antwort

9

Sie müssen im Grunde alle Sicherheitsfunktionen in Ihrem Browser deaktivieren (die einige Arten von Internet Explorer benötigen, um ActiveX zu verwenden).

Diese Art von Sache ist nicht von den meisten Browsern erlaubt, können Sie sich vorstellen, wenn [zufällige Person im Internet] konnte alles, was sie auf Ihrem Computer nur durch den Besuch auf einer Webseite laufen wollte?

+0

bist du sicher, dass dies das Problem ist? Ich habe versucht, "alert (" hier ");" am Anfang hinzuzufügen und ich habe die Warnung nicht gesehen. – Ronny

0

Nach documents:

Dieses Objekt ist eine Microsoft-Erweiterung und wird in Internet Explorer unterstützt nur ...

die ActiveXObject ist nur nutzbare Innen Internet Explorer und nur mit zusätzlichen Berechtigungen und mehrere Warnmeldungen. Sie können dies sogar in Betracht ziehen, da es Clientcomputer mehreren Sicherheitsproblemen aussetzt und von keinem anderen Browser unterstützt wird.