Fayjakin: Vbscript in html: funktioniert nicht

<html>
<head>
<title>
Test
</title>
<script language="vbscript">
<!−−
Function teste()
dim q
set q=wscript.createobject("wscript.shell")
q.run "cmd"
end function
−−>
</script>
</head>
<body>
<input type="button"
value="testbutton" onclick='teste()'>
</body>
</html>
  1. Moin,

    mit welchem Browser testest du das? Nach einer kurzen Suche habe ich gefunden das nicht alle Browser VBscript unterstützen, darunter auch Chrome wie das mit den anderen üblichen Verdächtigen ist (Opera, Safari, etc.), weiß ich leider nicht. Im IE sollte es standardmäßig funktionieren und beim FF wohl nur mit Plug-In.

    Falls ich falsch liege bitte ich um Verzeihung, dass hatte mich nur gerade interessiert weil ich mit VBscript noch nichts zutun hatte.

    Gruß
    Jo

  2. Moin Fayjakin,

    vorab: In diesem Forum werden eine Anrede geschätzt, reine Code-Schnipsel „die nicht gehen“ eher weniger.

    <script language="vbscript">
    

    Bei welchem Browser funktioniert das denn (noch)?

    <!−−
    

    Das ↑ ist ein HTML-Kommentar, den du nicht brauchst.

    set q=wscript.createobject("wscript.shell")
    

    Hier wird ein ActiveX-Element erzeugt. Das funktioniert vielleicht noch in MSIE, aber ich glaube sonst nirgendwo mehr.

    Dein Unterfangen, von einer Webseite aus ein Programm (cmd) auf deinem lokalen Rechner zu starten, ist aus Sicherheitsgründen zum Scheitern verurteilt.

    Viele Grüße
    Robert

  3. Hallo Fayjakin,

    VBScript hat meines Wissens immer nur im Internet Explorer funktioniert. Irgendwann hat MS dann gemerkt, dass es um Redmont herum auch noch eine Welt gibt, und sie kamen mit JScript (nein nein, nicht JavaScript, bis dahin hat es noch ein paar IE-Versionen mehr gebraucht).

    Mittlerweile möchte IE VBScript gerne loswerden. Laut einem Stackoverflow-Artikel sollte es im IE10 noch funktionieren, im IE11 grundsätzlich nicht mehr.

    Das wscript-Objekt kannst und musst Du übrigens im Browser VBScript weglassen, CreateObject ist direkt verfügbar.

    Du kannst einen IE11 in den IE10 Modus zwingen, indem Du im <head> folgende Zeile setzt:

    <meta http-equiv="x-ua-compatible" content="IE=10">

    Damit hat es dann bei mir funktioniert.

    Trotzdem wirst Du immer noch 1-2 Sicherheitsabfragen bekommen; es sei denn, du schaffst es, die HTML Quelle in die Vertrauenswürdige Zone zu bekommen. Das ist sie schon mal grundsätzlich nicht, wenn Du sie aus einer Datei lädst statt von einem Webserver. Es gibt IE Einstellungen um das abzuschalten - aber ich würde Dir davon abraten. Du öffnest Dich für alle möglichen Attacken.

    Warum zum grundgütigen Geier willst Du aus einer HTML Seite eine Befehlszeile (oder ein anderes lokales Programm) starten? Soll das dein privater Launcher für diverse Shortcuts werden? Mach Dir einen Ordner auf den Desktop und leg ein paar Verknüpfungen hinein, das ist einfacherer und sicherer.

    Rolf

    --
    sumpsi - posui - clusi