Función GetConsoleProcessList
Recupera una lista de los procesos asociados a la consola actual.
Sintaxis
DWORD WINAPI GetConsoleProcessList(
_Out_ LPDWORD lpdwProcessList,
_In_ DWORD dwProcessCount
);
Parámetros
lpdwProcessList [out]
Puntero a un búfer que recibe una matriz de identificadores de proceso tras el éxito. Debe ser un búfer válido y no puede ser NULL
. El búfer debe tener espacio para recibir al menos 1 identificador de proceso devuelto.
dwProcessCount [in]
Número máximo de identificadores de proceso que se pueden almacenar en el búfer lpdwProcessList. Debe ser mayor que 0.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es menor o igual que dwProcessCount y representa el número de identificadores de proceso almacenados en el búfer lpdwProcessList.
Si el búfer es demasiado pequeño para contener todos los identificadores de proceso válidos, el valor devuelto es el número necesario de elementos de matriz. La función no almacenará ningún identificador en el búfer. En esta situación, use el valor devuelto para asignar un búfer lo suficientemente grande como para almacenar toda la lista y volver a llamar a la función.
Si el valor devuelto es cero, se ha producido un error en la función porque cada consola tiene al menos un proceso asociado. Para obtener información de error extendida, llame a GetLastError.
Si se proporcionó una lista de procesos NULL
o el recuento de procesos era 0, la llamada devolverá 0 y GetLastError
devolverá ERROR_INVALID_PARAMETER
. Proporcione un búfer de al menos un elemento para llamar a esta función. Asigne un búfer mayor y vuelva a llamar si el código devuelto es mayor que la longitud del búfer proporcionado.
Comentarios
Para compilar una aplicación que use esta función, defina _WIN32_WINNT como 0x0501 o posterior. Para obtener más información, consulte Uso de los encabezados de Windows.
Sugerencia
Esta API no se recomienda y no tiene un equivalente de terminal virtual. Esta decisión alinea intencionadamente la plataforma Windows con otros sistemas operativos. Este estado solo es relevante para el contexto de los privilegios, la sesión y el usuario local. Es posible que las aplicaciones que se comuniquen de forma remota a través de utilidades y transportes multiplataforma como SSH no funcionen como se espera si se utiliza esta API.
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Encabezado | ConsoleApi3.h (a través de WinCon.h, incluido Windows.h) |
Biblioteca | Kernel32.lib |
Archivo DLL | Kernel32.dll |