Здравствуйте, уважаемые подписчики. Перед вами очередной выпуск рассылки "WinAPI
на русском".
Сайт рассылки: http://www.bcbdev.ru. Материалы по Win32 API, C++Builder.
Раздел "WinAPI": http://www.bcbdev.ru/winapi.htm
Раздел "C++Builder": http://www.bcbdev.ru/cbuilder.htm
Раздел "Примеры кода": http://www.bcbdev.ru/codesamples.htm
Раздел "MSDN по-русски": http://www.bcbdev.ru/msdn/index.php
Обновления на сайте
Нет.
Перевод
Сегодня вашему вниманию представлен перевод функции EnumProcessModules.
EnumProcessModules
Функция EnumProcessModules извлекает дескриптор для каждого модуля в указанном
процессе.
BOOL EnumProcessModules(
HANDLE hProcess, // дескриптор процесса
HMODULE *lphModule, // массив дескрипторов модулей
DWORD cb, // размер массива
LPDWORD lpcbNeeded // необходимое количество байт
);
Параметры
hProcess – дескриптор процесса.
lphModule – указатель на массив, который получает список дескрипторов модулей.
cb – размер массива lphModule в байтах.
lpcbNeeded – количество байт, необходимых для сохранения всех дескрипторов модулей
в массиве lphModule.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об
ошибке вызовите функцию GetLastError.
Комментарии
Хорошим правилом является задать большой массив значений HMODULE, поскольку трудно
прогнозировать, как много модулей будет в процессе в то время, когда вы вызываете
EnumProcessModules. Чтобы определить, не является ли массив lphModule слишком
маленьким для хранения всех дескрипторов модулей для процесса, сравните значение,
возвращенное в параметре lpcbNeeded со значением, указанным в cb. Если значение
lpcbNeeded больше значения cb, увеличьте размер массива и вызовите функцию EnumProcessModules
еще раз.
Чтобы определить, сколько модулей было перечислено вызовом EnumProcessModules,
разделите результирующее значение параметра lpcbNeeded на sizeof(HMODULE).
Требования
Windows NT/2000/XP: включена в Windows NT 4.0 и выше.
Windows 95/98/Me: не поддерживается.
Заголовок: объявлена в Psapi.h.
Библиотека: используйте Psapi.lib.
См. также
EnumProcesses.
Справочник по WinAPI: http://www.bcbdev.ru/winapi/win32api.exe
Справочник по WinAPI (zip-версия): http://www.bcbdev.ru/winapi/win32api.zip
Дружественная рассылка "Программирование на WinAPI": http://subscribe.ru/catalog/comp.soft.prog.russianmsdn
С уважением,
ведущий рассылки
Тарас Сорока.
mailto:stathome@rol.ru