How to modify process environment variables

ketmar ketmar at ketmar.no-ip.org
Tue Oct 17 04:56:23 UTC 2017


Ky-Anh Huynh wrote:

> Hi,
>
> Is it possible to change the current process's environment variables?
>
> I have looked at `std/process.d` source code, and there is only a private 
> method `createEnv` used when new (sub)process is created.
>
> In C `putEnv` the answer is positive: 
> http://man7.org/linux/man-pages/man3/putenv.3.html (FIXME)
>
> I come to this question as I want to set some custom variables for my 
> unittests. My program reads some tokens from system environments, and 
> it's convenient if I can simulate different cases for testings.
>
> Thanks for your reading and support.

you can use libc's `putenv()` in D too, it is ok. just import 
`core.sys.posix.stdlib`,  it is there. D is not antagonistic to C, and 
doesn't try to replace the whole libc with it's own libraries. so if you 
see something that libc has and you'd like to use -- just do it! ;-)


More information about the Digitalmars-d-learn mailing list