Ste*_*owe 1 c++ windows cmd environment-variables
我想编写一个程序,在调用它的shell(cmd.exe)实例中设置一个环境变量.我的想法是,我可以在此变量中存储一些状态,然后在后续调用中再次使用它.
我知道有像SetEnvironmentVariable这样的命令,但我的理解是那些只改变当前进程的变量而不会修改调用shell的变量.
具体来说,我希望能够创建一个可以在两个目录之间跳转的命令.Pushd/Popd可以转到目录并返回,但是没有办法将第二次返回到最初推送的目录.
调用
SetEnvironmentVariable对系统环境变量没有影响.要以编程方式添加或修改系统环境变量,请将它们添加到HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment注册表项,然后将设置为字符串"Environment" 的WM_SETTINGCHANGE消息广播lParam.这允许应用程序(如shell)获取更新.请注意,此键中列出的环境变量的值限制为1024个字符.
考虑到有两个级别的环境 - 系统和流程 - 更改shell中的那些将构成改变另一个流程的环境.我不相信这是可能的.
| 归档时间: |
|
| 查看次数: |
6112 次 |
| 最近记录: |