Fonction GetConsoleProcessList
Récupère une liste des processus attachés à la console actuelle.
Syntaxe
DWORD WINAPI GetConsoleProcessList(
_Out_ LPDWORD lpdwProcessList,
_In_ DWORD dwProcessCount
);
Paramètres
lpdwProcessList [sortie]
Un pointeur vers une mémoire tampon qui reçoit un tableau d’identificateurs de processus en cas de succès. Il doit s’agir d’une mémoire tampon valide, qui ne peut pas être NULL
. La mémoire tampon doit pouvoir recevoir au moins un identificateur de processus renvoyé.
dwProcessCount [entrée]
Le nombre maximal d’identificateurs de processus pouvant être stockés dans la mémoire tampon lpdwProcessList. La valeur doit être supérieure à 0.
Valeur renvoyée
Si la fonction aboutit, la valeur renvoyée est inférieure ou égale à dwProcessCount et représente le nombre d'identificateurs de processus stockés dans la mémoire tampon lpdwProcessList.
Si la mémoire tampon est trop petite pour contenir tous les identificateurs de processus valides, la valeur renvoyée est le nombre requis d'éléments de tableau. La fonction n'aura stocké aucun identificateur dans la mémoire tampon. Dans ce cas, utilisez la valeur renvoyée pour attribuer une mémoire tampon suffisamment grande pour stocker la liste entière et appelez à nouveau la fonction.
Si la valeur renvoyée est zéro, la fonction a échoué, car chaque console est associée à au moins un processus. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Si une liste de processus NULL
a été fournie ou si le nombre de processus était égal à 0, l’appel renvoie 0 et GetLastError
renvoie ERROR_INVALID_PARAMETER
. Fournissez une mémoire tampon d’au moins un élément pour appeler cette fonction. Attribuez une mémoire tampon plus grande et appelez à nouveau si le code de retour est plus grand que la longueur de la mémoire tampon fournie.
Notes
Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT sur 0x0501 ou une version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.
Conseil
Cette API n’est pas recommandée et n’a pas d’équivalent de terminal virtuel. Cette décision aligne intentionnellement la plateforme Windows avec d’autres systèmes d’exploitation. Cet état n'est pertinent que pour l'utilisateur local, la session et le contexte des privilèges. La communication à distance des applications via des utilitaires multiplateformes et des transports comme SSH peut ne pas fonctionner comme prévu si vous utilisez cette API.
Spécifications
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 | ConsoleApi3.h (via WinCon.h, include Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |