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.
|
|
/*++
Copyright (C) 1998-1999 Microsoft Corporation
Module Name:
smtprov.h
Abstract:
This object is used to store the list of all current trace providers in the system.
--*/
#ifndef _CLASS_SMTPROV_
#define _CLASS_SMTPROV_
typedef struct _SLQ_TRACE_PROVIDER { CString strDescription; CString strGuid; INT iIsEnabled; INT iIsActive; } SLQ_TRACE_PROVIDER, *PSLQ_TRACE_PROVIDER;
class CSmTraceLogService; struct IWbemServices;
class CSmTraceProviders : public CObject { public: CSmTraceProviders( CSmTraceLogService* ); virtual ~CSmTraceProviders( void );
DWORD Open ( const CString& rstrMachineName ); DWORD Close ( void ); HRESULT SyncWithConfiguration( void ); HRESULT ConnectToServer( void ); HRESULT GetBootState( INT& );
SLQ_TRACE_PROVIDER* GetProviderInfo( INT ); SLQ_TRACE_PROVIDER* GetKernelProviderInfo( void );
INT GetGenProvCount ( void );
INT IndexFromGuid ( const CString& rstrGuid );
DWORD AddProvider ( const CString& rstrDescription, const CString& rstrGuid, INT iIsEnabled, INT iIsActive); private: // Helper class
class CRegisteredGuidData { public: CRegisteredGuidData( void ){};
CString m_strGuid; INT m_iIsEnabled; }; typedef CRegisteredGuidData* PREGISTERED_GUID_DATA;
static LPCWSTR m_cszBackslash; static LPCWSTR m_cszDefaultNamespace; static LPCWSTR m_cszTraceProviderClass; static LPCWSTR m_cszRegisteredGuidsClass; static LPCWSTR m_cszDescription; static LPCWSTR m_cszGuid; static LPCWSTR m_cszKernelLogger;
CString m_strMachineName; IWbemServices* m_pWbemServices; INT m_iBootState; CArray<SLQ_TRACE_PROVIDER, SLQ_TRACE_PROVIDER&> m_arrGenTraceProvider; SLQ_TRACE_PROVIDER m_KernelTraceProvider; CSmTraceLogService* m_pTraceLogService; };
#endif //_CLASS_SMTPROV_
|