View source code
					
 Display the source code in std/process.d from which this page was generated on
 github.
					
				
				
 Improve this page
					
 Quickly fork, edit online, and submit a pull request for this page.
 Requires a signed-in GitHub account. This works well for small changes.
 If you'd like to make larger changes you may want to consider using
 local clone.
					
				
				
 Page wiki
					
 View or edit the community-maintained wiki page associated with this page.
					
				
			
			Enum std.process.Config
			Flags that control the behaviour of spawnProcess and
spawnShell.
Use bitwise OR to combine flags.
The enum base type is
						
.
					int
Enum members
| Name | Description | 
|---|---|
									
										inheritFDs
									
								 | 
								    On POSIX, open file descriptors
    are by default inherited by the child process.  As this may lead
    to subtle bugs when pipes or multiple threads are involved,
    spawnProcess ensures that all file descriptors except the
    ones that correspond to standard input/output/error are closed
    in the child process when it starts.  Use  to prevent
    this.
 | 
							
									
										newEnv
									
								 | 
								    By default, the child process inherits the parent's environment,
    and any environment variables passed to spawnProcess will
    be added to it.  If this flag is set, the only variables in the
    child process' environment will be those given to spawnProcess.
 | 
							
									
										retainStderr
									
								 | 
								    Unless the child process inherits the standard input/output/error
    streams of its parent, one almost always wants the streams closed
    in the parent when spawnProcess returns.  Therefore, by
    default, this is done.  If this is not desirable, pass any of these
    options to spawnProcess.
 | 
							
									
										retainStdin
									
								 | 
								    Unless the child process inherits the standard input/output/error
    streams of its parent, one almost always wants the streams closed
    in the parent when spawnProcess returns.  Therefore, by
    default, this is done.  If this is not desirable, pass any of these
    options to spawnProcess.
 | 
							
									
										retainStdout
									
								 | 
								    Unless the child process inherits the standard input/output/error
    streams of its parent, one almost always wants the streams closed
    in the parent when spawnProcess returns.  Therefore, by
    default, this is done.  If this is not desirable, pass any of these
    options to spawnProcess.
 | 
							
									
										suppressConsole
									
								 | 
								    On Windows, if the child process is a console application, this
    flag will prevent the creation of a console window.  Otherwise,
    it will be ignored. On POSIX,  has no effect.
 | 
							
Example
auto logFile = File("myapp_error.log", "w");
// Start program, suppressing the console window (Windows only),
// redirect its error stream to logFile, and leave logFile open
// in the parent process as well.
auto pid = spawnProcess("myapp", stdin, stdout, logFile,
                        Config.retainStderr | Config.suppressConsole);
scope(exit)
{
    auto exitCode = wait(pid);
    logFile.writeln("myapp exited with code ", exitCode);
    logFile.close();
}
Authors
Lars Tandle Kyllingstad, Steven Schveighoffer, Vladimir Panteleev