Contrôle de processus et d'environnement

Utilisez les routines de régulation de processus pour démarrer, arrêter, et gérer des processus depuis un programme. Utilisez les routines d'environnement-contrôle pour obtenir et modifier les informations sur l'environnement du système d'exploitation.

Fonctions de contrôle de processus et d'environnement

Routine

Utilisez

Équivalent de .NET Framework

abort

Arrêter le processus sans vider les mémoires tampons ou appeler des fonctions enregistrées par atexit et _onexit

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

assert

Test d'une erreur de logique

System::Diagnostics::Debug::Assert

macros _ASSERT, _ASSERTE

Similaire à assert, mais uniquement disponible dans les versions de débogage des bibliothèques Runtime

System::Diagnostics::Debug::Assert

atexit

Routines de planification pour l'exécution à l'arrêt du programme

System::Diagnostics::Process::Exited

_beginthread, _beginthreadex

Créez un nouveau thread sur un processus de système d'exploitation Windows

System::Threading::Thread::Start

_cexit

Effectue les procédures d'arrêt exit (telles que vider les mémoires tampons), puis retourne le contrôle au programme appelant sans mettre fin au processus

System::Diagnostics::Process::CloseMainWindow

_c_exit

Effectue les procédures d'arrêt _exit, puis retourne le contrôle au programme appelant sans mettre fin au processus

System::Diagnostics::Process::CloseMainWindow

_cwait

Attendre qu'un autre processus se termine.

System::Diagnostics::Process::WaitForExit

_endthread, _endthreadex

Terminer un thread de système d'exploitation Windows

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

_execl, _wexecl

Exécute le nouveau processus avec la liste d'arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execle, _wexecle

Exécutez le nouveau processus avec la liste d'arguments et l'environnement donné

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execlp, _wexeclp

Exécutez le nouveau processus avec la variable PATH et la liste des arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execlpe, _wexeclpe

Exécutez le nouveau processus avec la variable PATH, l'environnement donné, et la liste d'arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execv, _wexecv

Exécute le nouveau processus avec le tableau d'arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execve, _wexecve

Exécutez le nouveau processus avec le tableau d'arguments et l'environnement donné

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execvp, _wexecvp

Exécutez le nouveau processus avec la variable PATH et le tableau des arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_execvpe, _wexecvpe

Exécutez le nouveau processus avec la variable PATH, l'environnement donné, et le tableau d'arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

exit

Appelle les fonctions stockées par atexit et _onexit, vide toutes les mémoires tampons, ferme tous les fichiers ouverts, et termine le processus

System::Diagnostics::Process::Kill

_exit

Termine le processus immédiatement sans appeler atexit ou _onexit ou vider les mémoires tampons

System::Diagnostics::Process::Kill

getenv, _wgetenv, getenv_s, _wgetenv_s

Obtient la valeur de la variable d'environnement

System::Environment::GetEnvironmentVariable

_getpid

Obtient le numéro d'identification de processus

System::Diagnostics::Process::Id

longjmp

Restaure l'environnement de pile sauvegardé ; l'utilise pour exécuter un goto non local

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

_onexit

Routines de planification pour l'exécution à l'arrêt du programme ; utilisation pour la compatibilité avec la version 7,0 de Microsoft C/C++ et antérieures

System::Diagnostics::Process::Exited

_pclose

Attendez le nouveau processeur de commandes et fermez le flux de données sur le canal associé

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

perror, _wperror

Imprime un message d'erreur.

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

_pipe

Créez un canal pour lire et écrire

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

_popen, _wpopen

Créez le canal et exécutez la commande

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

_putenv, _wputenv, _putenv_s, _wputenv_s

Ajoutez ou modifiez la valeur de la variable d'environnement

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

raise

Envoyer le signal au processus appelant

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

setjmp

Enregistrez l'environnement de pile ; utilisez le pour exécuter un gotonon local

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

signal

Signal d'interruption de descripteur

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

_spawnl, _wspawnl

Créer et exécuter un nouveau processus avec la liste d'arguments spécifiée

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnle, _wspawnle

Créer et exécuter un nouveau processus avec la liste d'arguments spécifiée et l'environnement

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnlp, _wspawnlp

Créer et exécuter un nouveau processus avec la variable PATH et la liste des arguments spécifiée

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnlpe, _wspawnlpe

Créer et exécuter un nouveau processus avec la variable PATH, l'environnement spécifié et la liste des arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnv, _wspawnv

Créer et exécuter un nouveau processus avec le tableau d'arguments spécifiée

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnve, _wspawnve

Créer et exécuter un nouveau processus avec le tableau d'arguments et l'environnement spécifié

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnvp, _wspawnvp

Créer et exécuter un nouveau processus avec la variable PATH et le tableau des arguments spécifiée

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

_spawnvpe, _wspawnvpe

Créer et exécuter un nouveau processus avec la variable PATH, l'environnement spécifié et le tableau des arguments

System::Diagnostics::Process Class, System::Diagnostics::ProcessStartInfo Class

system, _wsystem

Exécutez la commande du système d'exploitation

System::Diagnostics::ProcessStartInfo Class, System::Diagnostics::Process Class

Dans le système d'exploitation Windows, le processus engendré est équivalent au processus engendrant. Tout processus peut utiliser _cwait pour attendre tout autre processus dont l'ID de processus est connu.

La différence entre _exec et les familles _spawn est qu'une fonction _spawn peut retourner le contrôle depuis le nouveau processus vers le processus appelant. Dans une fonction _spawn, le processus appelant et le nouveau processus sont présents dans la mémoire à moins que _P_OVERLAY soit spécifié. Dans une fonction _exec, le nouveau processus recouvre le processus appelant, le contrôle ne peut pas retourner au processus appelant sauf si une erreur se produit dans la tentative de démarrage de l'exécution du nouveau processus.

Les différences entre les fonctions dans la famille _exec, ainsi que celles parmi la famille _spawn, comprennent la méthode de recherche du fichier à exécuter comme le nouveau processus, le formulaire dans lequel les arguments sont passés au nouveau processus, puis la méthode pour définir l'environnement, comme indiqué dans le tableau suivant. Utilisez une fonction qui passe une liste d'arguments lorsque le nombre d'arguments est fixe ou est connu au moment de compiler Utilisez une fonction qui passe un pointeur vers un tableau qui contient les arguments lorsque le nombre d'arguments doit être déterminé au moment de l'exécution. Les informations dans le tableau ci-dessous s'appliquent également aux homologues de caractères étendus de _spawn et _exec s'exécute.

Les familles de fonctions _spawn et le _exec

Fonctions

Utilisez la variable PATH pour rechercher le fichier

Convention de passage d'argument

paramètres d'environnement

_execl, _spawnl

Non

Liste

Hérité du processus appelant

_execle, _spawnle

Non

Liste

Le pointeur vers la table d'environnement pour le nouveau processus est transmis en tant que dernier argument

_execlp, _spawnlp

Oui

Liste

Hérité du processus appelant

_execlpe, _spawnlpe

Oui

Liste

Le pointeur vers la table d'environnement pour le nouveau processus est transmis en tant que dernier argument

_execv, _spawnv

Non

Tableau

Hérité du processus appelant

_execve, _spawnve

Non

Tableau

Le pointeur vers la table d'environnement pour le nouveau processus est transmis en tant que dernier argument

_execvp, _spawnvp

Oui

Tableau

Hérité du processus appelant

_execvpe, _spawnvpe

Oui

Tableau

Le pointeur vers la table d'environnement pour le nouveau processus est transmis en tant que dernier argument

Voir aussi

Référence

Routines runtime par catégorie