2001-01-20 00:23:24 +03:00
|
|
|
#include "nsIFile.idl"
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
|
|
|
|
[scriptable, uuid(3ed86dbe-d084-11d4-ba7a-00c04fa0d26b)]
|
|
|
|
|
|
|
|
interface nsIProcess : nsISupports
|
|
|
|
{
|
|
|
|
void init(in nsIFile executable);
|
|
|
|
void initWithPid(in unsigned long pid);
|
|
|
|
|
|
|
|
void kill();
|
2002-04-27 09:33:09 +04:00
|
|
|
|
|
|
|
/** XXX what charset? **/
|
2003-01-03 00:00:31 +03:00
|
|
|
/** Executes the file this object was initialized with
|
|
|
|
* @param blocking Whether to wait until the process terminates before returning or not
|
|
|
|
* @param args An array of arguments to pass to the process
|
|
|
|
* @param count The length of the args array
|
|
|
|
* @return the PID of the newly spawned process */
|
|
|
|
unsigned long run(in boolean blocking, [array, size_is(count)] in string args, in unsigned long count);
|
2001-01-20 00:23:24 +03:00
|
|
|
|
|
|
|
readonly attribute nsIFile location;
|
|
|
|
readonly attribute unsigned long pid;
|
|
|
|
readonly attribute string processName;
|
|
|
|
readonly attribute unsigned long processSignature;
|
|
|
|
readonly attribute long exitValue;
|
2002-03-23 00:37:50 +03:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Called to get the value of environment variable
|
2002-04-27 09:33:09 +04:00
|
|
|
* XXX what charset?
|
2002-03-23 00:37:50 +03:00
|
|
|
*
|
|
|
|
* @param aName The string enviroment variable name
|
|
|
|
* @exception NS_ERROR_OUT_OF_MEMORY
|
|
|
|
*
|
|
|
|
* @return The value of the requested string environment variable name
|
|
|
|
*/
|
|
|
|
string getEnvironment(in string aName);
|
2001-01-20 00:23:24 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
%{C++
|
|
|
|
|
|
|
|
#define NS_PROCESS_CONTRACTID "@mozilla.org/process/util;1"
|
|
|
|
#define NS_PROCESS_CLASSNAME "Process Specification"
|
|
|
|
%}
|