События
Присоединение к вызову ИИ Навыков
8 апр., 15 - 28 мая, 07
Отточите свои навыки ИИ и введите подметки, чтобы выиграть бесплатный экзамен сертификации
Зарегистрируйтесь!Этот браузер больше не поддерживается.
Выполните обновление до Microsoft Edge, чтобы воспользоваться новейшими функциями, обновлениями для системы безопасности и технической поддержкой.
Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Извлекает идентификатор процесса для каждого объекта процесса в системе.
BOOL EnumProcesses(
[out] DWORD *lpidProcess,
[in] DWORD cb,
[out] LPDWORD lpcbNeeded
);
[out] lpidProcess
Указатель на массив, получающий список идентификаторов процесса.
[in] cb
Размер массива pProcessIds в байтах .
[out] lpcbNeeded
Число байтов, возвращаемых в массиве pProcessIds .
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Рекомендуется использовать большой массив, так как трудно предсказать количество процессов во время вызова EnumProcesses.
Чтобы определить, сколько процессов было перечислено, разделите значение lpcbNeeded на sizeof(DWORD). Нет никаких указаний на то, что буфер слишком мал для хранения всех идентификаторов процессов. Поэтому, если значение lpcbNeeded равно cb, попробуйте повторить вызов с большим массивом.
Чтобы получить дескрипторы процессов для процессов, идентификаторы которых вы только что получили, вызовите функцию OpenProcess .
Начиная с Windows 7 и Windows Server 2008 R2, Psapi.h устанавливает номера версий для функций PSAPI. Номер версии PSAPI влияет на имя, используемое для вызова функции, и библиотеку, которую должна загрузить программа.
Если PSAPI_VERSION имеет значение 2 или больше, эта функция определяется как K32EnumProcesses в Psapi.h и экспортируется в Kernel32.lib и Kernel32.dll. Если PSAPI_VERSION равно 1, эта функция определяется как EnumProcesses в Psapi.h и экспортируется в Psapi.lib и Psapi.dll в виде оболочки, которая вызывает K32EnumProcesses.
Программы, которые должны работать в более ранних версиях Windows, а также Windows 7 и более поздних версиях, всегда должны вызывать эту функцию как EnumProcesses. Чтобы обеспечить правильное разрешение символов, добавьте Psapi.lib в макрос TARGETLIBS и скомпилируйте программу с параметром –DPSAPI_VERSION=1. Чтобы использовать динамическое связывание во время выполнения, загрузите Psapi.dll.
Пример см. в разделах Перечисление всех процессов или Перечисление всех модулей для процесса.
Минимальная версия клиента | Windows XP [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2003 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | psapi.h |
Библиотека | Kernel32.lib в Windows 7 и Windows Server 2008 R2; Psapi.lib (если PSAPI_VERSION=1) в Windows 7 и Windows Server 2008 R2; Psapi.lib в Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP |
DLL | Kernel32.dll в Windows 7 и Windows Server 2008 R2; Psapi.dll (если PSAPI_VERSION=1) в Windows 7 и Windows Server 2008 R2; Psapi.dll в Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP |
События
Присоединение к вызову ИИ Навыков
8 апр., 15 - 28 мая, 07
Отточите свои навыки ИИ и введите подметки, чтобы выиграть бесплатный экзамен сертификации
Зарегистрируйтесь!