home *** CD-ROM | disk | FTP | other *** search
/ Team Palmtops 7 / Palmtops_numero07.iso / WinCE / SDKWindowsCE / AutoPC / apcsdk10.exe / data1.cab / Emulation_Include_Files / tlhelp32.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-05-13  |  3.4 KB  |  120 lines

  1. /*++
  2.  
  3. Copyright (c) 1997  Microsoft Corporation
  4.  
  5. Module Name: tlhelp32.h
  6.  
  7. Purpose: Toolhelp include file for Windows
  8.  
  9. --*/
  10.  
  11. #ifndef __TOOLHELP32_H__
  12. #define __TOOLHELP32_H__
  13.  
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif    /* __cplusplus */
  17.  
  18. #define TH32CS_SNAPHEAPLIST 0x00000001
  19. #define TH32CS_SNAPPROCESS  0x00000002
  20. #define TH32CS_SNAPTHREAD   0x00000004
  21. #define TH32CS_SNAPMODULE   0x00000008
  22. #define TH32CS_SNAPALL        (TH32CS_SNAPHEAPLIST | TH32CS_SNAPPROCESS | TH32CS_SNAPTHREAD | TH32CS_SNAPMODULE)
  23. #define TH32CS_GETALLMODS    0x80000000
  24.  
  25. HANDLE WINAPI CreateToolhelp32Snapshot(DWORD dwFlags, DWORD th32ProcessID);
  26. BOOL WINAPI CloseToolhelp32Snapshot(HANDLE hSnapshot);
  27.  
  28. typedef struct tagHEAPLIST32 {
  29.     DWORD  dwSize;
  30.     DWORD  th32ProcessID;
  31.     DWORD  th32HeapID;
  32.     DWORD  dwFlags;
  33. } HEAPLIST32, *PHEAPLIST32, *LPHEAPLIST32;
  34.  
  35. #define HF32_DEFAULT        1  // process's default heap
  36.  
  37. BOOL WINAPI Heap32ListFirst(HANDLE hSnapshot, LPHEAPLIST32 lphl);
  38. BOOL WINAPI Heap32ListNext(HANDLE hSnapshot, LPHEAPLIST32 lphl);
  39.  
  40. typedef struct tagHEAPENTRY32 {
  41.     DWORD  dwSize;
  42.     HANDLE hHandle;
  43.     DWORD  dwAddress;
  44.     DWORD  dwBlockSize;
  45.     DWORD  dwFlags;
  46.     DWORD  dwLockCount;
  47.     DWORD  dwResvd;
  48.     DWORD  th32ProcessID;
  49.     DWORD  th32HeapID;
  50. } HEAPENTRY32, *PHEAPENTRY32, *LPHEAPENTRY32;
  51.  
  52. #define LF32_FIXED    0x00000001
  53. #define LF32_FREE     0x00000002
  54. #define LF32_MOVEABLE 0x00000004
  55. #define LF32_DECOMMIT 0x00000008
  56. #define LF32_BIGBLOCK 0x00000010
  57.  
  58. BOOL WINAPI Heap32First(HANDLE hSnapshot, LPHEAPENTRY32 lphe, DWORD th32ProcessID, DWORD th32HeapID);
  59. BOOL WINAPI Heap32Next(HANDLE hSnapshot, LPHEAPENTRY32 lphe);
  60.  
  61. BOOL WINAPI Toolhelp32ReadProcessMemory(DWORD th32ProcessID, LPCVOID lpBaseAddress, LPVOID lpBuffer,
  62.     DWORD cbRead, LPDWORD lpNumberOfBytesRead);
  63.  
  64. typedef struct tagPROCESSENTRY32 {
  65.     DWORD   dwSize;
  66.     DWORD   cntUsage;
  67.     DWORD   th32ProcessID;
  68.     DWORD   th32DefaultHeapID;
  69.     DWORD   th32ModuleID;
  70.     DWORD   cntThreads;
  71.     DWORD   th32ParentProcessID;
  72.     LONG    pcPriClassBase;
  73.     DWORD   dwFlags;
  74.     TCHAR   szExeFile[MAX_PATH];
  75.     DWORD    th32MemoryBase;
  76.     DWORD    th32AccessKey;
  77. } PROCESSENTRY32, *PPROCESSENTRY32, *LPPROCESSENTRY32;
  78.  
  79. BOOL WINAPI Process32First(HANDLE hSnapshot, LPPROCESSENTRY32 lppe);
  80. BOOL WINAPI Process32Next(HANDLE hSnapshot, LPPROCESSENTRY32 lppe);
  81.  
  82. typedef struct tagTHREADENTRY32 {
  83.     DWORD   dwSize;
  84.     DWORD   cntUsage;
  85.     DWORD   th32ThreadID;
  86.     DWORD   th32OwnerProcessID;
  87.     LONG    tpBasePri;
  88.     LONG    tpDeltaPri;
  89.     DWORD   dwFlags;
  90.     DWORD    th32AccessKey;
  91.     DWORD    th32CurrentProcessID;
  92. } THREADENTRY32, *PTHREADENTRY32, *LPTHREADENTRY32;
  93.  
  94. BOOL WINAPI Thread32First(HANDLE hSnapshot, LPTHREADENTRY32 lpte);
  95. BOOL WINAPI Thread32Next(HANDLE hSnapshot, LPTHREADENTRY32 lpte);
  96.  
  97. typedef struct tagMODULEENTRY32 {
  98.     DWORD   dwSize;
  99.     DWORD   th32ModuleID;
  100.     DWORD   th32ProcessID;
  101.     DWORD   GlblcntUsage;
  102.     DWORD   ProccntUsage;
  103.     BYTE   *modBaseAddr;
  104.     DWORD   modBaseSize;
  105.     HMODULE hModule;
  106.     TCHAR   szModule[MAX_PATH];
  107.     TCHAR   szExePath[MAX_PATH];
  108.     DWORD    dwFlags;
  109. } MODULEENTRY32, *PMODULEENTRY32, *LPMODULEENTRY32;
  110.  
  111. BOOL WINAPI Module32First(HANDLE hSnapshot, LPMODULEENTRY32 lpme);
  112. BOOL WINAPI Module32Next(HANDLE hSnapshot, LPMODULEENTRY32 lpme);
  113.  
  114. #ifdef __cplusplus
  115. }
  116. #endif
  117.  
  118. #endif // __TOOLHELP32_H__
  119.  
  120.