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.
|
|
// comobj.h: Definition of the WmRgSrv class
//
//////////////////////////////////////////////////////////////////////
#ifndef _WAMREG_COMOBJ_H
#define _WAMREG_COMOBJ_H
//#if !defined(AFX_COMOBJ_H__29822ABB_F302_11D0_9953_00C04FD919C1__INCLUDED_)
//#define AFX_COMOBJ_H__29822ABB_F302_11D0_9953_00C04FD919C1__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "common.h"
#include "resource.h" // main symbols
#include "iadmw.h"
#include "iiscnfg.h"
#include "iadmext.h"
/////////////////////////////////////////////////////////////////////////////
// WmRgSrv
class CWmRgSrv : public IADMEXT { public: CWmRgSrv(); ~CWmRgSrv();
//DECLARE_NOT_AGGREGATABLE(WmRgSrv)
// Remove the comment from the line above if you don't want your object to
// support aggregation.
// IWmRgSrv
public: STDMETHOD(QueryInterface)(REFIID riid, void ** ppv); STDMETHOD_(ULONG, AddRef)(); STDMETHOD_(ULONG, Release)(); STDMETHOD(Initialize)(); STDMETHOD(EnumDcomCLSIDs)(/* [size_is][out] */CLSID *pclsidDcom, /* [in] */ DWORD dwEnumIndex); STDMETHOD(Terminate)();
private: // Since wamreg has only one com object. No need to use static members.
DWORD m_cSignature; LONG m_cRef; };
class CWmRgSrvFactory: public IClassFactory { public: CWmRgSrvFactory(); ~CWmRgSrvFactory();
STDMETHOD(QueryInterface)(REFIID riid, void ** ppv); STDMETHOD_(ULONG, AddRef)(); STDMETHOD_(ULONG, Release)();
STDMETHOD(CreateInstance)(IUnknown * pUnknownOuter, REFIID riid, void ** ppv); STDMETHOD(LockServer)(BOOL bLock);
CWmRgSrv *m_pWmRgServiceObj;
private: ULONG m_cRef; };
// Global data defines.
extern CWmRgSrvFactory* g_pWmRgSrvFactory; extern DWORD g_dwRefCount;
#endif // _WAMREG_COMOBJ_H
|