structure PROCESS_INFORMATION (processthreadsapi.h)

Contient des informations sur un processus nouvellement créé et son thread principal. Il est utilisé avec la fonction CreateProcess, CreateProcessAsUser, CreateProcessWithLogonW ou CreateProcessWithTokenW .

Syntaxe

typedef struct _PROCESS_INFORMATION {
  HANDLE hProcess;
  HANDLE hThread;
  DWORD  dwProcessId;
  DWORD  dwThreadId;
} PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION;

Membres

hProcess

Handle du processus nouvellement créé. Le handle est utilisé pour spécifier le processus dans toutes les fonctions qui effectuent des opérations sur l’objet de processus.

hThread

Handle du thread principal du processus nouvellement créé. Le handle est utilisé pour spécifier le thread dans toutes les fonctions qui effectuent des opérations sur l’objet thread.

dwProcessId

Valeur qui peut être utilisée pour identifier un processus. La valeur est valide à partir du moment où le processus est créé jusqu’à ce que tous les handles du processus soient fermés et que l’objet de processus soit libéré ; à ce stade, l’identificateur peut être réutilisé.

dwThreadId

Valeur qui peut être utilisée pour identifier un thread. La valeur est valide à partir du moment où le thread est créé jusqu’à ce que tous les handles du thread soient fermés et que l’objet thread soit libéré ; à ce stade, l’identificateur peut être réutilisé.

Remarques

Si la fonction réussit, veillez à appeler la fonction CloseHandle pour fermer les poignées hProcess et hThread lorsque vous en avez terminé. Sinon, lorsque le processus enfant se termine, le système ne peut pas propre les structures de processus pour le processus enfant, car le processus parent a toujours des handles ouverts pour le processus enfant. Toutefois, le système ferme ces handles à l’arrêt du processus parent, de sorte que les structures liées à l’objet de processus enfant sont nettoyées à ce stade.

Exemples

Pour obtenir un exemple, consultez Création de processus.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête processthreadsapi.h (inclure Windows.h sur Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)

Voir aussi

CreateProcess

CreateProcessAsUser

CreateProcessWithLogonW

CreateProcessWithTokenW