代码之家  ›  专栏  ›  技术社区  ›  Steve

以编程方式删除环境变量

  •  6
  • Steve  · 技术社区  · 14 年前

    我需要编写一些C++代码的单元测试来检查环境变量的存在。我使用msvs2008和gtest作为我的框架。我使用putenv添加环境变量,使用getevn检查环境变量,但是我不知道如何删除它,这样其他测试就看不到它了。我知道这很容易,但我在网上找不到答案。谢谢

    4 回复  |  直到 14 年前
        1
  •  12
  •   341008 Sylvain    14 年前

    打电话 putenv "SOME_VAR=" as参数将删除环境变量 SOME_VAR _putenv 作为 普滕夫 已弃用。

        2
  •  2
  •   Mark B    14 年前

    您总是可以派生/执行子进程来执行 putenv / getenv 测试,然后当它终止时,周围就没有任何杂散的环境了。

        3
  •  2
  •   rubenvb    14 年前

    在cmd.exe中,这可以工作:

    set SOMEVAR=something
    echo %SOMEVAR%
    set SOMEVAR=
    echo %SOMEVAR%
    

    最后一个显示它已被删除。

        4
  •  0
  •   tonio    14 年前

    unsetenv

    如果vc2008缺少此功能,可以使用直接访问环境 getenv_s 删除环境变量 .