Create a new process.
Defined in <SDL3/SDL_process.h>
const char * const *args, bool pipe_stdio); SDL_Process* SDL_CreateProcess(
const char * const * | args | the path and arguments for the new process. |
bool | pipe_stdio | true to create pipes to the process's standard input and from the process's standard output, false for the process to have no input and inherit the application's standard output. |
(SDL_Process *) Returns the newly created and running process, or NULL if the process couldn't be created.
The path to the executable is supplied in args[0]. args[1..N] are additional arguments passed on the command line of the new process, and the argument list should be terminated with a NULL, e.g.:
const char *args[] = { "myprogram", "argument", NULL };
Setting pipe_stdio to true is equivalent to setting SDL_PROP_PROCESS_CREATE_STDIN_NUMBER
and SDL_PROP_PROCESS_CREATE_STDOUT_NUMBER
to SDL_PROCESS_STDIO_APP
, and will allow the use of SDL_ReadProcess() or SDL_GetProcessInput() and SDL_GetProcessOutput().
See SDL_CreateProcessWithProperties() for more details.
It is safe to call this function from any thread.
This function is available since SDL 3.1.3.