VBScript Per il Lancio di Internet Explorer Con l’URL Generato

Attualmente sono un apprendimento HTA di programmazione. Ho un requisito come indicato di seguito.

Ci sono due caselle di input in forma (entrambi obbligatori). Quando inserisco i valori e fare clic sul pulsante di ricerca, un url vorresti essere creato in base all’input. Il deve lanciare l’applicazione Internet Explorer con l’url generato.

Il mio problema è che io sono in grado di lanciare il browser IE, ma io non sono in grado di passare l’url ad esso.
Ho provato molti modi, ma io non sono in grado di farlo fare.

Ho dato il mio codice qui sotto. Ho rimosso la mia errata sintassi di passare l’url del browser. Il seguente codice crea l’url e il lancio di un vuoto IE explorer.

Si prega di aiutare me. Grazie in anticipo.

<html> 
<head> 
<script language="VBScript"> 

    Sub RunProgram
        callb = document.getElementById("callb").value
        call = document.getElementById("call").value
        url = "www.google.com"&callb&"and"&call
        msgbox(url)
        Set objShell = CreateObject("Wscript.Shell")
        objShell.Run "iexplore.exe"
    End Sub

</script> 
</head> 
<body>

<form style="width:254px; height:44px;">
CallB: <input type="text" id="callb" value=""><br>
Call  : <input type="text" id="call" value=""><br><br>
<button onclick="RunProgram">search</button>
</form>

</body>
</html>



4 Replies
  1. 3

    È possibile caricare un URL nel browser predefinito utilizzando il metodo Run() di WShell:

    CreateObject("WScript.Shell").Run "www.google.com"

    Se si desidera caricare esplicitamente l’URL in Internet Explorer, è necessario determinare il percorso completo IEXPLORE.EXE prima, poi passare a Run():

    CreateObject("WScript.Shell").Run """" & strExePath & """ www.google.com"

    O

    CreateObject("WScript.Shell").Run """" & strExePath & """ " & strURL

    Notare le virgolette. Ti verrà voglia di mettere le virgolette attorno il percorso IE nel caso in cui il percorso contiene uno spazio. Per specificare una citazione all’interno di una stringa, devi raddoppiare. Se le citazioni sono confuso, è possibile utilizzare Chr(34) per specificare un carattere di citazione:

    CreateObject("WScript.Shell").Run Chr(34) & strExePath & Chr(34) & " " & strURL
    • Sei veramente grande. Il suo lavoro per me. Ho una piccola preoccupazione. Potresti spiegare un po ‘ di chiarezza circa le virgolette nella sintassi?
    • Certo. Quando si digita un percorso alla riga di comando, è necessario utilizzare le virgolette se il percorso contiene spazi. Per esempio, “C:\Program i File”. La stessa regola vale per la funzione Run (). Per specificare una citazione all’interno di una stringa deve essere raddoppiato. Ecco perché usiamo 4 citazioni. Uno a inizio stringa, una doppia citazione, e poi un’altra citazione di fine stringa. In alternativa, è possibile utilizzare Chr(34) per specificare un preventivo. Ho modificato la mia risposta per mostrare questo metodo.
    • Ho capito. Grazie mille. 🙂
  2. 0

    Per rendere la vita più facile, io di solito uso questa funzione per aggiungere le virgolette in una variabile.

    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function

    Un esempio che mostra come è facile da usare.

    Option Explicit
    Dim fso,ws,DossierProgramfiles,Winrar,FileZilla,FireFox
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ws = CreateObject("WScript.Shell")
    DossierProgramfiles = ws.ExpandEnvironmentStrings("%PROGRAMFILES%")
    Winrar = DblQuote(DossierProgramfiles & "\Winrar\Winrar.exe")
    If fso.FileExists(DossierProgramfiles & "\Winrar\Winrar.exe") Then
        MsgBox Winrar,Vbinformation,Winrar
        ws.run Winrar
    Else
        MsgBox "Le fichier " & Winrar & " n'existe pas",VbCritical,"Le fichier " & Winrar & " n'existe pas"
    End If
    FileZilla = DblQuote(DossierProgramfiles & "\FileZilla FTP Client\filezilla.exe")
    If fso.FileExists(DossierProgramfiles & "\FileZilla FTP Client\filezilla.exe") Then
        MsgBox FileZilla,Vbinformation,FileZilla
        Ws.run FileZilla
    Else
        MsgBox "Le fichier " & FileZilla & " n'existe pas",VbCritical,"Le fichier " & FileZilla & " n'existe pas"
    End If
    FireFox = DblQuote(DossierProgramfiles & "\Mozilla Firefox\FireFox.exe")
    If fso.FileExists(DossierProgramfiles & "\Mozilla Firefox\FireFox.exe") Then
        MsgBox FireFox,Vbinformation,FireFox
        ws.run FireFox
    Else
        MsgBox "Le fichier " & FireFox & " n'existe pas",VbCritical,"Le fichier " & FireFox & " n'existe pas"
    End If
    '****************************************************************************************************
    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function
    '****************************************************************************************************
  3. 0

    Fare un tentativo con questo HTA :

    <html>
    <head>
    <HTA:APPLICATION
    APPLICATIONNAME="Search on Google with Internet Explorer"
    BORDER="THIN"
    BORDERSTYLE="NORMAL"
    ICON="magnify.exe"
    INNERBORDER="NO"
    MAXIMIZEBUTTON="NO"
    MINIMIZEBUTTON="NO"
    SCROLL="NO"
    SELECTION="NO"
    SYSMENU="YES"
    SINGLEINSTANCE="YES"/>
    <META HTTP-EQUIV="MSThemeCompatible" CONTENT="YES">
    <script language="VBScript">
    Option Explicit
    Dim Titre
    Titre = "Search on Google with Internet Explorer"
    Self.document.title = Titre
    Sub window_onload()
        CALL CenterWindow(300,180)
        Self.document.bgColor = "Orange"
    End Sub
    Sub RunProgram()
        Dim X,Y,URL,objShell,Param,MaCmd
        X = text1.value
        Y = text2.value
        Param = "#q="& X & "+" & Y &""
        URL = "www.google.com"& Param
        Set objShell = CreateObject("Wscript.Shell")
        msgbox("iexplore.exe " & DblQuote(URL)),VbInformation,Titre
        MaCmd = "iexplore.exe "& DblQuote(URL) &""
        objShell.Run(MaCmd)
    End Sub
    '***************************************************
    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function
    '***************************************************
    'Position Windows
    Sub CenterWindow(x,y)
        Dim iLeft,itop
        window.resizeTo x,y
        iLeft = window.screen.availWidth/2 - x/2
        itop = window.screen.availHeight/2 - y/2
        window.moveTo ileft, itop
    End Sub
    </script>
    </head>
    <body><center>
    Text1 : <input type="text" id="text1" Name="text1" value="Hackoo"><br>
    Text2 : <input type="text" id="text2" Name="text2" value="Vbscript+HTA"><br><br>
    <input type="submit" Value="Search on Google" onclick="RunProgram()"></center>
    </body>
    </html>

Lascia un commento