165 lines
5.2 KiB
C
165 lines
5.2 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (C) 1998-1999 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
smproppg.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Class definitions for the property page base class.
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _SMPROPPG_H_
|
||
|
#define _SMPROPPG_H_
|
||
|
|
||
|
#if _MSC_VER >= 1000
|
||
|
#pragma once
|
||
|
#endif // _MSC_VER >= 1000
|
||
|
|
||
|
#include "smlogqry.h" // For shared data
|
||
|
|
||
|
#define MAXSTR 32
|
||
|
#define INVALID_DWORD -2 // SLQ_DISK_MAX_SIZE = -1
|
||
|
#define INVALID_DOUBLE -1.00
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// CSmPropertyPage dialog
|
||
|
|
||
|
#define VALIDATE_FOCUS 1
|
||
|
#define VALIDATE_APPLY 2
|
||
|
|
||
|
class CSmPropertyPage : public CPropertyPage
|
||
|
{
|
||
|
DECLARE_DYNCREATE(CSmPropertyPage)
|
||
|
|
||
|
// Construction
|
||
|
public:
|
||
|
|
||
|
CSmPropertyPage();
|
||
|
|
||
|
CSmPropertyPage (
|
||
|
UINT nIDTemplate,
|
||
|
LONG_PTR hConsole = NULL,
|
||
|
LPDATAOBJECT pDataObject = NULL );
|
||
|
|
||
|
virtual ~CSmPropertyPage();
|
||
|
|
||
|
public:
|
||
|
|
||
|
static UINT CALLBACK PropSheetPageProc( HWND hwnd, UINT uMsg, LPPROPSHEETPAGE ppsp );
|
||
|
DWORD SetContextHelpFilePath ( const CString& rstrPath );
|
||
|
const CString& GetContextHelpFilePath ( void ) { return m_strContextHelpFilePath; };
|
||
|
void SetModifiedPage ( const BOOL bModified = TRUE );
|
||
|
|
||
|
DWORD AllocInitCounterPath(
|
||
|
const LPTSTR szCounterPath,
|
||
|
PPDH_COUNTER_PATH_ELEMENTS* ppCounter );
|
||
|
|
||
|
|
||
|
|
||
|
// Dialog Data
|
||
|
//{{AFX_DATA(CSmPropertyPage)
|
||
|
// DO NOT EDIT what you see in these blocks of generated code !
|
||
|
//}}AFX_DATA
|
||
|
|
||
|
|
||
|
// Overrides
|
||
|
// ClassWizard generate virtual function overrides
|
||
|
//{{AFX_VIRTUAL(CSmPropertyPage)
|
||
|
public:
|
||
|
protected:
|
||
|
virtual BOOL OnInitDialog();
|
||
|
virtual BOOL OnSetActive();
|
||
|
//}}AFX_VIRTUAL
|
||
|
|
||
|
public:
|
||
|
LPFNPSPCALLBACK m_pfnOriginalCallback;
|
||
|
|
||
|
// Implementation
|
||
|
protected:
|
||
|
// Generated message map functions
|
||
|
//{{AFX_MSG(CSmPropertyPage)
|
||
|
virtual BOOL OnHelpInfo( HELPINFO* );
|
||
|
virtual void OnContextMenu( CWnd*, CPoint );
|
||
|
//}}AFX_MSG
|
||
|
DECLARE_MESSAGE_MAP()
|
||
|
|
||
|
// Generated OLE dispatch map functions
|
||
|
//{{AFX_DISPATCH(CCountersProperty)
|
||
|
// NOTE - the ClassWizard will add and remove member functions here.
|
||
|
//}}AFX_DISPATCH
|
||
|
// DECLARE_DISPATCH_MAP()
|
||
|
// DECLARE_INTERFACE_MAP()
|
||
|
|
||
|
protected:
|
||
|
|
||
|
enum eStartType {
|
||
|
eStartManually,
|
||
|
eStartImmediately,
|
||
|
eStartSched
|
||
|
};
|
||
|
|
||
|
void SetRunAs( CSmLogQuery* pQuery );
|
||
|
BOOL Initialize(CSmLogQuery* pQuery);
|
||
|
eStartType DetermineCurrentStartType ( void );
|
||
|
|
||
|
virtual INT GetFirstHelpCtrlId ( void ) { ASSERT ( FALSE ); return 0; }; // Subclass must override.
|
||
|
|
||
|
BOOL IsValidData ( CSmLogQuery* pQuery, DWORD fReason );
|
||
|
virtual BOOL IsValidLocalData() { return TRUE; }
|
||
|
|
||
|
BOOL Apply( CSmLogQuery* pQuery );
|
||
|
|
||
|
BOOL IsActive( void ) { return m_bIsActive; };
|
||
|
void SetIsActive( BOOL bIsActive ) { m_bIsActive = bIsActive; };
|
||
|
BOOL UpdateService( CSmLogQuery* pQuery, BOOL bSyncSerial = FALSE );
|
||
|
void SetHelpIds ( DWORD* pdwHelpIds ) { m_pdwHelpIds = pdwHelpIds; };
|
||
|
|
||
|
BOOL IsModifiedPage( void ) { return m_bIsModifiedPage; };
|
||
|
|
||
|
void ValidateTextEdit(CDataExchange * pDX,
|
||
|
int nIDC,
|
||
|
int nMaxChars,
|
||
|
DWORD * value,
|
||
|
DWORD minValue,
|
||
|
DWORD maxValue);
|
||
|
BOOL ValidateDWordInterval(int nIDC,
|
||
|
LPCWSTR strLogName,
|
||
|
long lValue,
|
||
|
DWORD minValue,
|
||
|
DWORD maxValue);
|
||
|
void OnDeltaposSpin(NMHDR * pNMHDR,
|
||
|
LRESULT * pResult,
|
||
|
DWORD * pValue,
|
||
|
DWORD dMinValue,
|
||
|
DWORD dMaxValue);
|
||
|
|
||
|
BOOL SampleTimeIsLessThanSessionTime( CSmLogQuery* pQuery );
|
||
|
BOOL SampleIntervalIsInRange( SLQ_TIME_INFO&, const CString& );
|
||
|
BOOL IsWritableQuery( CSmLogQuery* pQuery );
|
||
|
BOOL ConnectRemoteWbemFail(CSmLogQuery* pQuery, BOOL bNotTouchRunAs);
|
||
|
CWnd* GetRunAsWindow();
|
||
|
|
||
|
SLQ_PROP_PAGE_SHARED m_SharedData;
|
||
|
HINSTANCE m_hModule;
|
||
|
LPDATAOBJECT m_pDataObject;
|
||
|
CString m_strUserDisplay; // For RunAs
|
||
|
CString m_strUserSaved;
|
||
|
BOOL m_bCanAccessRemoteWbem;
|
||
|
BOOL m_bPwdButtonEnabled;
|
||
|
private:
|
||
|
|
||
|
LONG_PTR m_hConsole;
|
||
|
BOOL m_bIsActive;
|
||
|
CString m_strContextHelpFilePath;
|
||
|
DWORD* m_pdwHelpIds;
|
||
|
BOOL m_bIsModifiedPage;
|
||
|
};
|
||
|
//{{AFX_INSERT_LOCATION}}
|
||
|
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
|
||
|
|
||
|
#endif // _SMPROPPG_H_
|