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) 1997-1999 Microsoft Corporation.
//
// File: EVPROV.H
//
// Description:
// Sample event provider - header file defines event provider class
//
// History:
//
// **************************************************************************
#ifndef _EVPROV_H_
#define _EVPROV_H_
// {C0A94C66-CB70-4D06-91D2-5DE68C0D0EC5}
DEFINE_GUID(CLSID_MyEventProvider, 0xC0A94C66, 0xCB70, 0x4D06, 0x91, 0xD2, 0x5D, 0xE6, 0x8C, 0x0D, 0x0E, 0xC5);
#define EVENTCLASS L"PolicyRefreshEvent"
class CMyEventProvider : public IWbemEventProvider, public IWbemProviderInit { ULONG m_cRef; IWbemServices *m_pNs; IWbemObjectSink *m_pSink; IWbemClassObject *m_pEventClassDef; int m_eStatus; HANDLE m_hThread; static DWORD WINAPI EventThread(LPVOID pArg); void InstanceThread();
public: enum { Pending, Running, PendingStop, Stopped };
CMyEventProvider(); ~CMyEventProvider();
//
// IUnknown members
//
STDMETHODIMP QueryInterface(REFIID, LPVOID *); STDMETHODIMP_(ULONG) AddRef(void); STDMETHODIMP_(ULONG) Release(void);
// Inherited from IWbemEventProvider
// =================================
HRESULT STDMETHODCALLTYPE ProvideEvents( /* [in] */ IWbemObjectSink __RPC_FAR *pSink, /* [in] */ long lFlags );
// Inherited from IWbemProviderInit
// ================================
HRESULT STDMETHODCALLTYPE Initialize( /* [in] */ LPWSTR pszUser, /* [in] */ LONG lFlags, /* [in] */ LPWSTR pszNamespace, /* [in] */ LPWSTR pszLocale, /* [in] */ IWbemServices __RPC_FAR *pNamespace, /* [in] */ IWbemContext __RPC_FAR *pCtx, /* [in] */ IWbemProviderInitSink __RPC_FAR *pInitSink ); };
#endif
|