Exporter (0) Imprimer
Développer tout
and
div
eof
not
or
xor
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

_putenv, _wputenv

Crée, modifie ou supprime, les variables d'environnement. Des versions plus sécurisées de ces fonctions sont disponibles ; consultez _putenv_s, _wputenv_s.

Remarque importante Important

Cette API ne peut pas être utilisée dans les applications qui s'exécutent dans le Windows Runtime. Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.

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

envstring

Définition d'une chaine environnement.

Retourne 0 en cas de réussite ou – 1 dans le cas d'une erreur.

La fonction _putenv ajoute de nouvelles variables d'environnement ou modifie les valeurs des variables d'environnement existantes. Les variables d'environnement définissent l'environnement dans lequel un processus s'exécute (par exemple, le chemin de recherche par défaut pour relier les bibliothèques à un programme). _wputenv est une version à caractères larges de _putenv; l'argument envstring vers _wputenv est une chaîne à caractères larges.

Mappages de routines de texte générique

Routine Tchar.h

_UNICODE et _MBCS non définis

_MBCS défini

_UNICODE défini

_tputenv

_putenv

_putenv

_wputenv

L'argument envstring doit être un pointeur vers une chaîne de la forme varname=string, où varname est le nom de la variable d'environnement à ajouter ou modifier et string est la valeur de la variable. Si varname est déjà partie de l'environnement, sa valeur est remplacée par string; sinon, la nouvelle variable varname et sa valeur string sont ajoutées à l'environnement. Supprimez une variable de l'environnement en spécifiant un string vide, en d'autres termes, en spécifiant seulement varname=.

_putenv et _wputenv affectent uniquement l'environnement qui est local au processus actuel ; vous ne pouvez pas les utiliser pour modifier l'environnement de commande niveau. Autrement dit, ces fonctions fonctionnent uniquement sur les structures de données accessibles à la bibliothèque Runtime et non dans le segment d'environnement créé pour un processus par le système d'exploitation. Lorsque le processus actuel se termine, l'environnement revient au niveau du processus appelant (dans la plupart des cas, le niveau du système d'exploitation). Toutefois, l'environnement modifié peut être passé à tous les nouveaux processus créés par _spawn, _exec, ou system, et ces nouveaux processus obtiennent tous les nouveaux éléments ajoutés par _putenv et _wputenv.

Ne modifiez pas une entrée d'environnement directement : à la place, utilisez _putenv ou _wputenv pour le modifier. En particulier, la libération directe d'éléments du tableau global _environ[] pourrait mener au remplissage d'une mémoire non valide.

getenv et _putenv utilisent la variable globale _environ pour accéder à la table d'environnement ; _wgetenv et _wputenv utilisent _wenviron. _putenv et _wputenv peuvent modifier la valeur d' _environ et _wenviron, invalidant ainsi l'argument _envp à main et l'argumentwenvp à wmain. Par conséquent, il est préférable d'utiliser _environ ou _wenviron pour accéder aux informations d'environnement. Pour plus d'informations sur la relation liant _putenv et _wputenv aux variables globales, consultez _environ, _wenviron.

Remarque Remarque

Les familles de fonctions _putenv et _getenv ne sont pas sécurisées du point de vue du thread. _getenv peut retourner un pointeur de chaîne alors que _putenv modifie la chaîne, provoquant des défaillances aléatoires. Assurez-vous que les appels à ces fonctions sont synchronisés.

Routine

En-tête requis

_putenv

<stdlib.h>

_wputenv

<stdlib.h> ou <wchar.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité.

Pour obtenir un exemple de la façon d'utiliser _putenv, consultez getenv, _wgetenv.

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft