123 lines
3.2 KiB
C
123 lines
3.2 KiB
C
|
// exctrdlg.h : header file
|
||
|
//
|
||
|
|
||
|
#define RESERVED 0L
|
||
|
#define OLD_VERSION 0x010000
|
||
|
|
||
|
#define ENABLE_PERF_CTR_QUERY 0
|
||
|
#define ENABLE_PERF_CTR_ENABLE 1
|
||
|
#define ENABLE_PERF_CTR_DISABLE 2
|
||
|
|
||
|
#define SORT_ORDER_LIBRARY 1
|
||
|
#define SORT_ORDER_SERVICE 2
|
||
|
#define SORT_ORDER_ID 3
|
||
|
|
||
|
typedef struct _REG_NOTIFY_THREAD_INFO {
|
||
|
HKEY hKeyToMonitor;
|
||
|
HWND hWndToNotify;
|
||
|
} REG_NOTIFY_THREAD_INFO, *PREG_NOTIFY_THREAD_INFO;
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// CExctrlstDlg dialog
|
||
|
|
||
|
class CExctrlstDlg : public CDialog
|
||
|
{
|
||
|
// Construction
|
||
|
public:
|
||
|
CExctrlstDlg(CWnd* pParent = NULL); // standard constructor
|
||
|
~CExctrlstDlg (void); // destructor
|
||
|
|
||
|
// Dialog Data
|
||
|
//{{AFX_DATA(CExctrlstDlg)
|
||
|
enum { IDD = IDD_EXCTRLST_DIALOG };
|
||
|
// NOTE: the ClassWizard will add data members here
|
||
|
//}}AFX_DATA
|
||
|
|
||
|
// ClassWizard generated virtual function overrides
|
||
|
//{{AFX_VIRTUAL(CExctrlstDlg)
|
||
|
protected:
|
||
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||
|
//}}AFX_VIRTUAL
|
||
|
|
||
|
// Implementation
|
||
|
protected:
|
||
|
HICON m_hIcon;
|
||
|
|
||
|
// Generated message map functions
|
||
|
//{{AFX_MSG(CExctrlstDlg)
|
||
|
virtual BOOL OnInitDialog();
|
||
|
afx_msg void OnPaint();
|
||
|
afx_msg HCURSOR OnQueryDragIcon();
|
||
|
afx_msg void OnSelchangeExtList();
|
||
|
afx_msg void OnDestroy();
|
||
|
afx_msg void OnRefresh();
|
||
|
afx_msg void OnAbout();
|
||
|
afx_msg void OnKillfocusMachineName();
|
||
|
afx_msg void OnSortButton();
|
||
|
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
|
||
|
afx_msg void OnEnablePerf();
|
||
|
|
||
|
//}}AFX_MSG
|
||
|
DECLARE_MESSAGE_MAP()
|
||
|
|
||
|
private:
|
||
|
BOOL IndexHasString (DWORD dwIndex);
|
||
|
void ScanForExtensibleCounters();
|
||
|
void UpdateDllInfo();
|
||
|
void UpdateSystemInfo();
|
||
|
void ResetListBox();
|
||
|
void SetSortButtons();
|
||
|
DWORD EnablePerfCounters (HKEY hKeyItem, DWORD dwNewValue);
|
||
|
HKEY hKeyMachine;
|
||
|
HKEY hKeyServices;
|
||
|
TCHAR szThisComputerName[MAX_PATH];
|
||
|
TCHAR szComputerName[MAX_PATH];
|
||
|
REG_NOTIFY_THREAD_INFO rntInfo;
|
||
|
DWORD dwSortOrder;
|
||
|
BOOL bReadWriteAccess;
|
||
|
DWORD dwRegAccessMask;
|
||
|
LPWSTR *pNameTable;
|
||
|
DWORD dwLastElement;
|
||
|
DWORD dwListBoxHorizExtent;
|
||
|
DWORD dwTabStopCount;
|
||
|
DWORD dwTabStopArray[1];
|
||
|
// 0 = Last Counter ID from Reg
|
||
|
// 1 = Last Counter ID from text
|
||
|
// 2 = Last Help ID from reg
|
||
|
// 3 = Last Help ID from text
|
||
|
DWORD dwIdArray[4];
|
||
|
};
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// CAbout dialog
|
||
|
|
||
|
class CAbout : public CDialog
|
||
|
{
|
||
|
// Construction
|
||
|
public:
|
||
|
CAbout(CWnd* pParent = NULL); // standard constructor
|
||
|
|
||
|
// Dialog Data
|
||
|
//{{AFX_DATA(CAbout)
|
||
|
enum { IDD = IDD_ABOUT };
|
||
|
// NOTE: the ClassWizard will add data members here
|
||
|
//}}AFX_DATA
|
||
|
|
||
|
|
||
|
// Overrides
|
||
|
// ClassWizard generated virtual function overrides
|
||
|
//{{AFX_VIRTUAL(CAbout)
|
||
|
protected:
|
||
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||
|
//}}AFX_VIRTUAL
|
||
|
|
||
|
// Implementation
|
||
|
protected:
|
||
|
|
||
|
// Generated message map functions
|
||
|
//{{AFX_MSG(CAbout)
|
||
|
virtual BOOL OnInitDialog();
|
||
|
// NOTE: the ClassWizard will add member functions here
|
||
|
//}}AFX_MSG
|
||
|
DECLARE_MESSAGE_MAP()
|
||
|
};
|