是否可以设置进程“A”的环境变量,使其仅对当前运行有效(进程“A”将由我的进程启动)使用C ++?
答案 0 :(得分:3)
假设您已准备好依赖Windows API,当您调用CreateProcess
函数启动进程时,您将拥有lpEnvironment
参数。
通常您传递NULL
,这意味着使用创建过程的环境。但是,您可以提供将由新进程使用的环境块。
您传递的环境块是以null结尾的以空字符结尾的字符串块。例如:
"MyVar=MyValue\0MyOtheVar=MyOtherValue\0\0"
定义了两个独立的变量。
答案 1 :(得分:0)
如果更改环境变量不会导致当前流程出现问题,请查看Setting Environment Variables in C++。
提示:您的流程分叉的任何程序都只包含您为其提供的环境变量和值。