Windows 中的 setenv 相当于什么?

What is the equivalent of setenv in Windows?

我正在尝试寻找 setenv 的等效项以在 C 程序中使用。我想做的是修改当前 运行 进程的所有环境变量的值。我正在尝试使用 putenv 但它不会以任何方式更改变量值。我能做什么?

这些是设置环境变量的正确方法。您遇到的问题是 C 运行时 setenv 使用的 SetEnvironmentVariable 不会更改系统范围的环境变量;只有当前 运行ning 进程的环境。

在 Windows 上更改系统范围或每个用户的环境变量通常使用脚本或 UI 完成。要从 C 程序修改系统范围的环境变量,您需要 (a) 使用 administrator rights, (b) you need to modify the System Registry 将其 运行,并且 (c) 您需要发送 WM_SETTINGSCHANGE Win32 消息以获取Windows shell.

拾取的更改