77 lines
1.7 KiB
C
77 lines
1.7 KiB
C
|
// 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
|