Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

122 lines
3.2 KiB

  1. // exctrdlg.h : header file
  2. //
  3. #define RESERVED 0L
  4. #define OLD_VERSION 0x010000
  5. #define ENABLE_PERF_CTR_QUERY 0
  6. #define ENABLE_PERF_CTR_ENABLE 1
  7. #define ENABLE_PERF_CTR_DISABLE 2
  8. #define SORT_ORDER_LIBRARY 1
  9. #define SORT_ORDER_SERVICE 2
  10. #define SORT_ORDER_ID 3
  11. typedef struct _REG_NOTIFY_THREAD_INFO {
  12. HKEY hKeyToMonitor;
  13. HWND hWndToNotify;
  14. } REG_NOTIFY_THREAD_INFO, *PREG_NOTIFY_THREAD_INFO;
  15. /////////////////////////////////////////////////////////////////////////////
  16. // CExctrlstDlg dialog
  17. class CExctrlstDlg : public CDialog
  18. {
  19. // Construction
  20. public:
  21. CExctrlstDlg(CWnd* pParent = NULL); // standard constructor
  22. ~CExctrlstDlg (void); // destructor
  23. // Dialog Data
  24. //{{AFX_DATA(CExctrlstDlg)
  25. enum { IDD = IDD_EXCTRLST_DIALOG };
  26. // NOTE: the ClassWizard will add data members here
  27. //}}AFX_DATA
  28. // ClassWizard generated virtual function overrides
  29. //{{AFX_VIRTUAL(CExctrlstDlg)
  30. protected:
  31. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  32. //}}AFX_VIRTUAL
  33. // Implementation
  34. protected:
  35. HICON m_hIcon;
  36. // Generated message map functions
  37. //{{AFX_MSG(CExctrlstDlg)
  38. virtual BOOL OnInitDialog();
  39. afx_msg void OnPaint();
  40. afx_msg HCURSOR OnQueryDragIcon();
  41. afx_msg void OnSelchangeExtList();
  42. afx_msg void OnDestroy();
  43. afx_msg void OnRefresh();
  44. afx_msg void OnAbout();
  45. afx_msg void OnKillfocusMachineName();
  46. afx_msg void OnSortButton();
  47. afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
  48. afx_msg void OnEnablePerf();
  49. //}}AFX_MSG
  50. DECLARE_MESSAGE_MAP()
  51. private:
  52. BOOL IndexHasString (DWORD dwIndex);
  53. void ScanForExtensibleCounters();
  54. void UpdateDllInfo();
  55. void UpdateSystemInfo();
  56. void ResetListBox();
  57. void SetSortButtons();
  58. DWORD EnablePerfCounters (HKEY hKeyItem, DWORD dwNewValue);
  59. HKEY hKeyMachine;
  60. HKEY hKeyServices;
  61. TCHAR szThisComputerName[MAX_PATH];
  62. TCHAR szComputerName[MAX_PATH];
  63. REG_NOTIFY_THREAD_INFO rntInfo;
  64. DWORD dwSortOrder;
  65. BOOL bReadWriteAccess;
  66. DWORD dwRegAccessMask;
  67. LPWSTR *pNameTable;
  68. DWORD dwLastElement;
  69. DWORD dwListBoxHorizExtent;
  70. DWORD dwTabStopCount;
  71. DWORD dwTabStopArray[1];
  72. // 0 = Last Counter ID from Reg
  73. // 1 = Last Counter ID from text
  74. // 2 = Last Help ID from reg
  75. // 3 = Last Help ID from text
  76. DWORD dwIdArray[4];
  77. };
  78. /////////////////////////////////////////////////////////////////////////////
  79. // CAbout dialog
  80. class CAbout : public CDialog
  81. {
  82. // Construction
  83. public:
  84. CAbout(CWnd* pParent = NULL); // standard constructor
  85. // Dialog Data
  86. //{{AFX_DATA(CAbout)
  87. enum { IDD = IDD_ABOUT };
  88. // NOTE: the ClassWizard will add data members here
  89. //}}AFX_DATA
  90. // Overrides
  91. // ClassWizard generated virtual function overrides
  92. //{{AFX_VIRTUAL(CAbout)
  93. protected:
  94. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  95. //}}AFX_VIRTUAL
  96. // Implementation
  97. protected:
  98. // Generated message map functions
  99. //{{AFX_MSG(CAbout)
  100. virtual BOOL OnInitDialog();
  101. // NOTE: the ClassWizard will add member functions here
  102. //}}AFX_MSG
  103. DECLARE_MESSAGE_MAP()
  104. };