I'm launching an executable from a firefox extension successfully. When I attempt to kill that same process it doesn't work.
What am I doing wrong?
var process;
var loadingMonitor = {
launchExternalApp : function (jnlp) {
process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
var env = Components.classes["@mozilla.org/process/environment;1"].createInstance(Components.interfaces.nsIEnvironment);
var javaWebStart = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
javaWebStart.initWithPath(env.get("JAVA_HOME"));
javaWebStart.append("bin");
javaWebStart.append("javaws.exe"); //TODO fix this for linux and others http://www.koders.com/javascript/fid08E6670AF783B7BD5703D3378E5C9BB039326190.aspx?s=checkbox
process.init(javaWebStart);
var arguments = ["-Xnosplash", jnlp];
process.runwAsync(arguments, arguments.length);
},
exit : function() {
process.kill();
}
}
window.addEventListener("load", loadingMonitor.launchExternalApp, false);
window.addEventListener("unload", loadingMonitor.exit, false);
I have tried logging so I know that exit is being called but if I try to print any of the information about the process I get undefineds, nulls, 0, etc.
I've followed the API and have been looking at bug reports but seemed to have reached a dead end.
Thank you in advance!