VBScript in HTML

  • VBScript

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von Don_Batisto.

    VBScript in HTML

    Wenn man eine Minianwendung für Windows erstellen möchte, dann geht dieses ja via HTML und co...

    Ich habe hier schon den Thread gefunden: [VBScript] Fehler vbscript einfache Sub wird nicht ausgeführt (Windows 7 /IE9)

    Leider hilft der mir nicht weiter, denn ich möchte nicht, die ganzen VBScript Subs in die HTML machen...

    JS-Dateien kann man ja mit

    HTML-Quellcode

    1. <script src="js/main.js" language="javascript" type="text/javascript"></script>
    einbinden und dann normal alle dortigen Fkt. aufrufen.

    Geht dies auch mit VBScript-Dateien wo ich all meine Fkt. reinsetze?

    HTML-Quellcode

    1. <script language="VBScript" type="text/VBScript" src="./start_mini.vbs"></script>
    das war meine Idee dazu leider, kommt nix drüben an, wenn dort eine einfache Sub mit einer MsgBox ist...
    Funktioniert VBS denn generell erstmal bei dir? Weil Default ist ja VBS deaktiviert weil eine zu große Sicherheitslücke in Browsern ist.

    Eigentlich sollte die Source Angabe funktionieren, vlt mal das ./ weglassen sondern nur "start_mini.bvs" wenn sich die HTML Datei im selben Verzeichnis wie das VBS befindet.

    PS: schreib den MIME-Typen mal klein, die sind immer klein geschrieben, das könnte schon was ausmachen.

    MarcoQuinten schrieb:

    <SCRIPT LANGUAGE="VBScript">
    <!--
    Function KannLiefern(Dt)
    KannLiefern = (CDate(Dt) - Now()) > 2
    End Function
    -->
    </SCRIPT>


    So müsste der ganze Code ja in die HTML-Datei.
    Der Übersicht halber möchte ich dies aber nur ungern machen müssen, da ich sehr viele Fkt. habe und diese lieber in mehreren VBS-Dateien gruppieren möchte.




    Edit:

    Dodo schrieb:

    Funktioniert VBS denn generell erstmal bei dir? Weil Default ist ja VBS deaktiviert weil eine zu große Sicherheitslücke in Browsern ist.

    Eigentlich sollte die Source Angabe funktionieren, vlt mal das ./ weglassen sondern nur "start_mini.bvs" wenn sich die HTML Datei im selben Verzeichnis wie das VBS befindet.

    PS: schreib den MIME-Typen mal klein, die sind immer klein geschrieben, das könnte schon was ausmachen.


    HTML-Quellcode

    1. <script language="VBScript">
    2. Sub RunSub
    3. strComputer = "."
    4. Set objLocator = CreateObject("WbemScripting.SwbemLocator")
    5. Set objWMIService = objLocator.ConnectServer(strComputer, "root\cimv2")
    6. Set colItems = objWMIService.ExecQuery("Select * From Win32_OperatingSystem")
    7. For Each objItem in colItems
    8. Msgbox objItem.Caption
    9. Next
    10. End Sub
    11. </script>
    12. <body>
    13. <input type="button" value="Run" name="run_button" onClick="RunSub">
    14. </body>
    Das ist mal ne Beispiel Fkt. die bei mir so funktioniert und mir dann in der MsgBox ausgibgt welches Windows ich habe
    Kannst auch mal versuchen, href ansatt src zu benutzen.
    <script language="VBScript" type="text/VBScript" href="start_mini.vbs"></script>

    #Edit:

    Was soll ei folgende Beispiel eigentlich passieren?

    HTML-Quellcode

    1. <script language="VBScript" type="text/VBScript" src="./start_mini.vbs"></script>


    Die Datei wird zwar eingebunden, der Aufruf der Sub muss aber dann zwischen <script .....> und </script> stehen.
    Es funktioniert genau wie bei JavaScript.
    Script im selben Verzeichnis:

    Visual Basic-Quellcode

    1. <script language="VBScript" src="samp.vbs">

    Script im Verzeichnis vbs:

    Visual Basic-Quellcode

    1. <script language="VBScript" src="vbs/samp.vbs">
    Das ist meine Signatur und sie wird wunderbar sein!
    Bitte auf die Korrektheit der HTML Tags achten!
    Es muss

    HTML-Quellcode

    1. <tag />

    oder

    HTML-Quellcode

    1. <tag></tag>
    sein.
    Sonst ists nicht Standard-Konform.
    Also:

    HTML-Quellcode

    1. <script language="VBScript" src="vbs/samp.vbs" />
    Neue Frage: - hat auch noch was mit dem Thema zu tun -

    Ich möchte gerne eine vbs-datei machen, die alle globalen fkt. beinhaltet und dann in jeder anderen vbs-datei, in der ich eine globale fkt. benötige einfach den aufruf der fkt. machen

    Beispiel:

    -Datei1-

    Visual Basic-Quellcode

    1. function ZeigeZahl
    2. zahl = rechne(1, 2)
    3. msgbox zahl
    4. end function


    -Datei2-

    Visual Basic-Quellcode

    1. function rechne(byval zahl, byval schritt)
    2. rechne = zahl + schritt
    3. end function


    ~~~~~~~~~~~~~~~~
    die fkt. rechne ist dann die globale fkt. und soll in der fkt. ZeigeZahl aufgerufen werden, jedoch stehen beide fkt. nicht in der gleichen vbs datei
    ob die beiden bsp fkt so wie aufgeschrieben laufen sei dahingestellt, da sie nur als bsp dienen sollen