windowsnode.jslaunching-application

Launch an external application from node.js


I'm writing a desktop web app that uses node.js to access the local file system. I can currently use node.js to open and copy files to different places on the hard drive. What I would also like to do is allow the user to open a specific file using the application that is associated with the file type. In other words, if the user selects "myfile.doc" in a Windows environment, it will launch MSWord with that file.

I must be a victim of terminology, because I haven't been able to find anything but the spawning of child processes that communicate with node.js. I just want to launch a file for the user to view and then let them decided what to do with it.

Thanks


Solution

  • you can do this

    var cp = require("child_process");
    cp.exec("document.docx"); // notice this without a callback..
    process.exit(0); // exit this nodejs process
    

    it not safe thought, to ensure that the command show no errors or any undesired output

    you should add the callback parameter child_process.exec(cmd,function(error,stdout,stderr){})

    and next you can work with events so you won't block execution of script or even make use of a external node.js script that launches and handles outputs from processes which you spawn from a "master" script.