Статья: Работа с процессами в С/С++. Основные приемы
} THREADENTRY32;
typedef THREADENTRY32 * PTHREADENTRY32;
typedef THREADENTRY32 * LPTHREADENTRY32;
typedef struct tagHEAPENTRY32
{
DWORD dwSize; //размерструктуры
HANDLE hHandle; // хэндлэтогоблока
DWORD dwAddress; // линейныйадресначалаблока
DWORD dwBlockSize; // размер блока в байтах
DWORD dwFlags; //флаги
/*
LF32_FIXED Блок памяти имеет фиксированную позицию
LF32_FREE Блок памяти не используется
LF32_MOVEABLE Блок памяти может перемещаться
*/
DWORD dwLockCount; число "замков"
DWORD dwResvd; // зарезервировано
DWORD th32ProcessID; // родительскийпроцесс
DWORD th32HeapID; // идентификаторкучи
} HEAPENTRY32;
typedef HEAPENTRY32 * PHEAPENTRY32;
typedef HEAPENTRY32 * LPHEAPENTRY32;
typedef struct tagHEAPLIST32
{
DWORD dwSize; //размерструктуры
DWORD th32ProcessID; // родительский процесс
DWORD th32HeapID; //куча в контексте процесса
DWORD dwFlags; //флаг. Значение всегда одно:
// HF32_DEFAULT - основная куча процесса