2013-04-13 19 views
5

Il mio particolare problema riguarda l'oggetto WScript con VBScript in un HTA.wscript.shell funziona in javascript ma non vbscript

<script language="VBScript"> 
    Sub test() 
     Set objShell = CreateObject("WScript.Shell") 
    End Sub 
</script> 

Questo funziona perfettamente sul mio computer di lavoro (Windows 7 Enterprise), ma non sul mio computer a casa (Windows 8 casa) e non sul mio computer madri (Windows 7 Home).

MA ASPETTARE! C'È PIÙ!

All'inizio pensavo che forse le librerie non erano lì, ma ho controllato un altro programma che ho scritto che utilizza JavaScript e non ha alcun problema. Testato il javascript nella mia app e funziona bene.

<script language="JavaScript"> 
    function javaTest() 
    { 
     objShell = new ActiveXObject("WScript.Shell"); 
    } 
</script> 

Questo è l'errore che continuo a ricevere.

ERRORE: il provider non è stato trovato. Potrebbe non essere installato correttamente.

Continuo a trovare soluzioni circa 64 vs 32 bit e li provo e non funziona. Inoltre, non spiega perché funzioni in JavaScript e non in VBScript. Sono frustrato, ho cercato in alto e in basso, e voglio davvero un McDouble proprio adesso. Quindi, qualsiasi informazione sarebbe molto apprezzata, anche se devi dirmi "È senza speranza Riscrivi tutto in JavaScript"

+1

È possibile combinare VBScript e JScript in una singola pagina, quindi è teoricamente possibile chiamare 'Set objShell = javaTest()' nel codice VBScript. È una soluzione, però, non una soluzione, ma è meglio che riscrivere il tutto. –

+0

Controllare il PERCORSO (sia UTENTE che SISTEMA). È possibile farlo digitando PATH dal prompt dei comandi, quindi verificare quali applicazioni potrebbero eseguire lo script prima. Aggiornamento – Lizz

risposta

2

Probabilmente hai diverse impostazioni sul lancio di oggetti ActiveX nei browser su questo computer. Per rendere lancio provare a configurarlo nei browser:

  • aperto su Strumenti
  • selezionare Opzioni Internet ...
  • scheda
  • Selezionare Sicurezza.
  • Selezionare Internet nell'area di contenuto Web. (O una zona in cui la vostra pagina web è)
  • Quindi, fare clic su Livello personalizzato ...
  • Trova sezione ActiveX nella lista (è davvero lunga)
  • Nelle impostazioni ActiveX selezionare Chiedi conferma o Attiva
+0

: Funziona sul computer di mia madre (Windows 7). Beh, ho provato il tuo suggerimento Garath, e non andare. Cheran, non è così male un'idea e riduce notevolmente il mio tempo di riscrittura. Questa copia di Windows 8 è stata installata entro una settimana fa (copia OEM). Solo le cose che sono state installate sono: Visual Studio 2012 Express, Dev C++, Net Bean ide7 (con JRE) e un paio di altri sdks. Oltre a ciò, musica e foto dal mio backup. C'è forse qualcosa che mi manca? –

+0

Quale IE stai rilasciando metro o normale? –

+0

Normale. Normalmente suppongo che sia lo stesso della modalità desktop. –

Problemi correlati