| 
    feisty meow concerns codebase
    2.140
    
   | 
 
Provides the capability to start processes in a variety of ways to run other applications. More...
#include <launch_process.h>


Public Types | |
| enum | launch_flags {  HIDE_APP_WINDOW = 0x1 , AWAIT_APP_EXIT = 0x2 , RETURN_IMMEDIATELY = 0x4 , AWAIT_VIA_POLLING = 0x8 , SHELL_EXECUTE = 0x10 }  | 
Public Member Functions | |
| DEFINE_CLASS_NAME ("launch_process") | |
| virtual | ~launch_process () | 
  Public Member Functions inherited from basis::nameable | |
| virtual const char * | class_name () const =0 | 
| Returns the bare name of this class as a constant character pointer.  More... | |
Static Public Member Functions | |
| static basis::un_int | run (const basis::astring &app_name, const basis::astring &command_line, int flag, basis::un_int &child_id) | 
| starts an application using the "app_name" as the executable to run.  More... | |
| static char_star_array | break_line (basis::astring &app, const basis::astring ¶meters) | 
| prepares an "app" to launch with the "parameters" (via exec).  More... | |
Provides the capability to start processes in a variety of ways to run other applications.
Definition at line 44 of file launch_process.h.
Definition at line 51 of file launch_process.h.
      
  | 
  inlinevirtual | 
Definition at line 49 of file launch_process.h.
      
  | 
  static | 
prepares an "app" to launch with the "parameters" (via exec).
this breaks the strings for an application named "app" and its "parameters" into an array of char * that is appropriate for the execv function.
Definition at line 121 of file launch_process.cpp.
References basis::astring::end(), FUNCDEF, basis::array< contents >::last(), basis::astring::length(), LOG, NULL_POINTER, eml_to_txt::num, basis::astring::stuff(), basis::astring::substring(), and basis::astring::zap().
| processes::launch_process::DEFINE_CLASS_NAME | ( | "launch_process" | ) | 
      
  | 
  static | 
starts an application using the "app_name" as the executable to run.
the "command_line" is the set of parameters to be passed to the app. the return value is OS specific but can be identified using system_error_text(). usually a zero return means success and non-zero codes are errors. the "flag" is an XORed value from the process launch flags that dictates how the app is to be started. in practice, only the HIDE_APP_WINDOW flag can be combined with other values. if either AWAIT flag is used, then the return value will be the launched process's own exit value. the thread or process_id of the launched process is stored in "child_id" if appropriate.
Definition at line 166 of file launch_process.cpp.
References processes::__our_kids(), processes::__process_synchronizer(), basis::astring::end(), execv, FUNCDEF, basis::astring::insert(), LOG, basis::array< contents >::observe(), and basis::astring::s().