Search code examples
node-webkit

Get the path to the current application in node-webkit


In node-webkit, is there any way to find the path to the current application? In node.js, you can use __dirname to find the path to the current application, but in node-webkit, the variable __dirname appears to be undefined.

The following node.js script prints the file path correctly:

console.log(__dirname)

The following node-webkit script does not print the file path correctly:

<script type = "text/javascript">
    alert(__dirname);
</script>

What is the correct way to find the path to the current application in node-webkit?


Solution

  • The answer to this question was discussed here: https://groups.google.com/d/topic/node-webkit/IwGzluFC9iU/discussion

    On Windows, use "process.execPath" to see the path of the executable that launched it. Then work from there, removing the executable's filename from the path to get the folder's path (assuming your app's .nw is relative to the executable or is combined with it).

    This works for me whether it is running with the zipped 'app.nw' or where 'nw.exe' and 'app.nw' are combined into one executable file (app.exe).