_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é |
---|
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.