2016-05-12 5 views
0

en utilisant NWJS pour créer une application de bureau simple. J'ai besoin de connecter l'application console C++ lorsque je fais un événement click dans un bouton sur html5. J'ai entendu dire que c'était possible en utilisant le module interne 'child_process' de Nodejs. Je n'ai pas réussi à exec le fichier exe quand je clique dans le bouton.Comment exécuter un fichier .exe à partir de Node.js

je le code suivant:

const exec = require('child_process').execFile; 
var cmd = 'Test.exe 1'; 

exec(cmd, function(error, stdout, stderr) { 
    // command output is in stdout 
    console.log('stdout:', stdout); 
    console.log('stderr:', stderr); 
    if (error !== null) { 
     console.log('exec error:', error); 
    } 
}); 

Le fichier .exe a un paramètre d'entrée (un numéro) et retourne un texte simple avec le nombre introduit. Tout le monde peut m'aider?

Merci!

+0

double possible: http://stackoverflow.com/questions/19762350/execute-an-exe-file-using-node -js – Nonemoticoner

+0

Je pense que dup répond à la question, bien que la cible ait été écrite en C++, ce n'est pas une question C++. – Niall

+0

Vous avez raison! Je vais l'éditer maintenant –

Répondre

0

Je pense que vous devriez donner à ce essayer

child_process.execFile(file[, args][, options][, callback]) 

file <String> The name or path of the executable file to run 
args <Array> List of string arguments 
options <Object> 

    cwd <String> Current working directory of the child process 
    env <Object> Environment key-value pairs 
    encoding <String> (Default: 'utf8') 
    timeout <Number> (Default: 0) 
    maxBuffer <Number> largest amount of data (in bytes) allowed on stdout or stderr - if exceeded child process is killed (Default: 200\*1024) 
    killSignal <String> (Default: 'SIGTERM') 
    uid <Number> Sets the user identity of the process. (See setuid(2).) 
    gid <Number> Sets the group identity of the process. (See setgid(2).) 

callback <Function> called with the output when process terminates 

    error <Error> 
    stdout <String> | <Buffer> 
    stderr <String> | <Buffer>