Esegui lo script .vbs con il nodo

Sto cercando di scoprire come posso eseguire un file .vbs da un’applicazione nodo.

Lo script fa la sua parte e la mia applicazione di nodo non ha bisogno di informazioni indietro, tranne forse quando lo script è finito in esecuzione.

Quando trovo un modo per farlo, cercherò di passare i parametri allo script, ma per ora ho solo bisogno di sapere come posso eseguire lo script.

Grazie

Usa child_process.spawnSync(command[, args][, options]) . Vedi a , b . demo:

Dato:

 |.. +---vbs | slave.vbs | \---nodejs master.js 

slave.vbs:

 Option Explicit Dim a : a = "no arg" If 0 < WScript.Arguments.Count Then a = WScript.Arguments(0) Dim o : o = Array("", WScript.ScriptName, a, Time()) o(0) = "MsgBox" MsgBox Join(o, "|") o(0) = "StdOut" WScript.Stdout.WriteLine Join(o, "|") o(0) = "StdErr" WScript.Stderr.WriteLine Join(o, "|") WScript.Quit 3 

master.js:

 'use strict'; const spawn = require( 'child_process' ).spawnSync, vbs = spawn( 'cscript.exe', [ '../vbs/slave.vbs', 'one' ] ); console.log( `stderr: ${vbs.stderr.toString()}` ); console.log( `stdout: ${vbs.stdout.toString()}` ); console.log( `status: ${vbs.status}` ); 

produzione:

 node master.js (MessageBox) stderr: StdErr|slave.vbs|one|14:09:39 stdout: StdOut|slave.vbs|one|14:09:39 status: 3