强制环境变量更改立即生效

问题描述

| 我需要从以下其中一项安装中更改Cygwin环境变量
CYGWIN
的值:
ntsec tty 
返回认值:
ntsec notty
我可以通过.reg文件以编程方式执行此操作:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\\SYstem\\CurrentControlSet\\Control\\Session Manager\\Environment]
\"CYGWIN\"=\"ntsec notty\"
但在重新启动之前,它不会影响当前或后续的命令提示符。我不想重启!我有什么方法可以强制将此更改至少立即应用于后续的命令提示符?     

解决方法

        这很容易修复,您不应该杀死资源管理器来做到这一点。 TL; DR用途:
setx.exe var value
使更改在以后的命令窗口以及所有支持WM_CHANGESETTINGS API的活动窗口中可用。您也可以对系统环境变量执行此操作,该变量将传播到支持此API的服务。 这不会更改当前的CMD.exe或cygwin Shell,因为它们都不支持它。 在那些简陋的var = value或export var = value中,每个shell需要执行一次。 有关更多信息,请http://support.microsoft.com/kb/104011。 A + 戴夫