Sdílet prostřednictvím


_putenv _wputenv

Vytvoří, změní nebo odebere systémové proměnné.Bezpečnější verze tyto funkce jsou k dispozici; see _putenv_s _wputenv_s.

Důležitá poznámkaDůležité

Toto rozhraní API nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW.

int _putenv(
   const char *envstring 
);
int _wputenv(
   const wchar_t *envstring 
);

Parametry

  • envstring
    Definice řetězců prostředí.

Vrácená hodnota

Vrátíte 0 v případě úspěchu nebo –1 v případě chyby.

Poznámky

_putenv Funkce přidá nové proměnné prostředí nebo upravuje hodnoty existující proměnné prostředí.Proměnné prostředí definují prostředí, ve kterém proces spustí (například výchozí cesta hledání knihovny propojit s programem)._wputenvje verzí širokého znaku _putenv; envstring argument _wputenv je řetězec širokého znaku.

Mapování rutiny obecného textu

Byla zahájena rutina Tchar.h

_UNICODE a _MBCS není definováno

_MBCS, definice

_UNICODE definována

_tputenv

_putenv

_putenv

_wputenv

envstring Argument musí být ukazatel na řetězec ve formátu varname=string, kde varname je název proměnné prostředí, chcete-li přidat nebo upravit a string je hodnota proměnné.Pokud varname je již součástí životního prostředí, její hodnota se nahrazuje string; jinak nové varname proměnné a jeho string hodnoty jsou přidány do životního prostředí.Zrušit proměnné prostředí tak, že zadáte prázdné string – jinými slovy, zadáním pouze varname=.

_putenva _wputenv ovlivnit pouze prostředí, která je umístěna na aktuální proces; je nelze použít k úpravě prostředí úrovni příkazu.To znamená, že tyto funkce pracují pouze na datových struktur, které jsou přístupné knihovny run-time a ne na segment prostředí pro proces vytvořen operačním systémem.Aktuální proces ukončen, životní prostředí se vrátí na úroveň volající proces (ve většině případů úrovni operačního systému).Upravené prostředí však může být předán všechny nové procesy vytvořené _spawn, _exec, nebo system, a tyto nové procesy získat všechny nové položky, které jsou přidány pomocí _putenv a _wputenv.

Neměňte položku prostředí přímo: místo toho použít _putenv nebo _wputenv ji změnit.Zejména přímé uvolnění prvky _environ[] globální pole by mohlo vést k neplatné paměti řeší.

getenva _putenv , použijte globální proměnnou _environ k přístupu k tabulce prostředí; _wgetenvand _wputenv use _wenviron._putenva _wputenv může změnit hodnotu _environ a _wenviron, tedy zrušení platnosti _envp argument main awenvp argument wmain.Proto je bezpečnější používat _environ nebo _wenviron přístup k informacím prostředí.Další informace o vztahu z _putenv a _wputenv na globální proměnné, viz _environ, _wenviron.

[!POZNÁMKA]

_putenv a _getenv rodin funkcí jsou vláknově bezpečné._getenvmůže vrátit ukazatel na řetězec při _putenv je úprava řetězce, což způsobí náhodné selhání.Ujistěte se, že volání na tyto funkce jsou synchronizovány.

Požadavky

Byla zahájena rutina

Požadované záhlaví

_putenv

<stdlib.h>

_wputenv

<stdlib.h> nebo <wchar.h>

Další informace o kompatibilitě v tématu Compatibility v úvodu.

Příklad

Ukázka použití _putenv, viz GETENV _wgetenv.

Ekvivalent v rozhraní .NET Framework

Nelze použít Volání funkce standardním C pomocí PInvoke. Další informace naleznete v tématu Platformu vyvolání příklady.

Viz také

Referenční dokumentace

Proces a řízení prostředí

GETENV _wgetenv

_searchenv _wsearchenv