home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / utility / v12n02.zip / PROCMON.H < prev    next >
C/C++ Source or Header  |  1992-12-20  |  2KB  |  70 lines

  1. //
  2. // ProcMon.H -- Header File for Windows/NT example program ProcMon.C
  3. //
  4.  
  5. #define WIN16     FALSE
  6. #define THUMBPOS  HIWORD(wParam)
  7.  
  8. struct decodeMsg {                             // structure associates
  9.     UINT Code;                              // messages or menu IDs
  10.     LONG (*Fxn)(HWND, UINT, UINT, LONG); }; // with a function
  11.  
  12. struct decodeUINT {                         // structure associates
  13.     UINT Code;                              // UINTs with a string
  14.     char * Name; };                         
  15.  
  16. struct decodeCounter {                         // structure associates
  17.     UINT Code;                              // Counters with a string 
  18.     char * Name;                             // and size
  19.     UINT Size; };                         
  20.  
  21. #define PERF_CTR_32BIT  1
  22. #define PERF_CTR_64BIT  2
  23. #define PERF_CTR_NODATA 3
  24. #define PERF_CTR_TEXT   4
  25.  
  26. // declare pointer types for performance
  27. // data structures defined in WINPERF.H
  28. typedef PERF_DATA_BLOCK          *PPERFDATA;
  29. typedef PERF_OBJECT_TYPE         *PPERFGROUP;
  30. typedef PERF_INSTANCE_DEFINITION *PPERFINSTANCE;
  31. typedef PERF_COUNTER_BLOCK       *PPERFCOUNTER;
  32. typedef PERF_COUNTER_DEFINITION  *PPERFCOUNTERDEF;
  33.  
  34. // arbitrary menu identifiers
  35. #define  IDM_EXIT     101
  36. #define  IDM_ABOUT    102
  37. #define     IDM_OBJECT   103
  38. #define  IDM_PROCESS  104
  39. #define  IDM_REFRESH  105
  40.  
  41. // Function prototypes
  42. int APIENTRY WinMain(HANDLE, HANDLE, PSTR, int);
  43. BOOL InitApp(HANDLE, int);
  44. BOOL TermApp(HANDLE);
  45. LONG CALLBACK FrameWndProc(HWND, UINT, UINT, LONG);
  46. BOOL CALLBACK AboutDlgProc (HWND, UINT, UINT, LONG);
  47. WORD CALLBACK TimerProc(HWND, UINT, UINT, LONG);
  48. LONG DoDestroy(HWND, UINT, UINT, LONG);
  49. LONG DoClose(HWND, UINT, UINT, LONG);
  50. LONG DoCreate(HWND, UINT, UINT, LONG);
  51. LONG DoSize(HWND, UINT, UINT, LONG);
  52. LONG DoCommand(HWND, UINT, UINT, LONG);
  53. LONG DoMenuExit(HWND, UINT, UINT, LONG);
  54. LONG DoMenuAbout(HWND, UINT, UINT, LONG);
  55. LONG DoRefresh(HWND, UINT, UINT, LONG);
  56. VOID AddLeftLine(char *);
  57. VOID AddRightLine(char *);
  58. VOID UpdateProfile(VOID);
  59. VOID EmptyLeftLines(VOID);
  60. VOID EmptyRightLines(VOID);
  61. VOID ShowProcesses(VOID);
  62. VOID ShowCounters(PPERFINSTANCE);
  63. BOOL GetPerfData(VOID);
  64. BOOL GetObjectTitles(VOID);
  65. PSTR FindTitle(INT);
  66. PPERFGROUP FindGroup(PSTR);
  67. INT FindCounterType(DWORD);
  68. PPERFINSTANCE FindProcess(PSTR);
  69.  
  70.