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.
112 lines
2.3 KiB
112 lines
2.3 KiB
//---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1996 - 1997
|
|
//
|
|
// File: cgenobj.hxx
|
|
//
|
|
// Contents: Microsoft ADs IIS Provider Generic Object
|
|
//
|
|
// History: 28-Feb-97 SophiaC Created.
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
class CIISGenObject;
|
|
|
|
|
|
class CIISGenObject : INHERIT_TRACKING,
|
|
public CCoreADsObject,
|
|
public IADs,
|
|
public IADsContainer,
|
|
public IISBaseObject
|
|
{
|
|
public:
|
|
|
|
/* IUnknown methods */
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
|
|
|
|
DECLARE_STD_REFCOUNTING
|
|
|
|
DECLARE_IDispatch_METHODS
|
|
|
|
DECLARE_IADs_METHODS
|
|
|
|
DECLARE_IADsContainer_METHODS
|
|
|
|
DECLARE_IISBaseObject_METHODS
|
|
|
|
CIISGenObject::CIISGenObject();
|
|
|
|
CIISGenObject::~CIISGenObject();
|
|
|
|
static
|
|
HRESULT
|
|
CIISGenObject::CreateGenericObject(
|
|
BSTR Parent,
|
|
BSTR CommonName,
|
|
BSTR ClassName,
|
|
CCredentials& Credentials,
|
|
DWORD dwObjectState,
|
|
REFIID riid,
|
|
void **ppvObj
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
CIISGenObject::AllocateGenObject(
|
|
LPWSTR pszClassName,
|
|
CCredentials& Credentials,
|
|
CIISGenObject ** ppGenObject
|
|
);
|
|
|
|
STDMETHOD(GetInfo)(
|
|
BOOL fExplicit
|
|
);
|
|
|
|
|
|
HRESULT
|
|
CIISGenObject::IISSetObject();
|
|
|
|
HRESULT
|
|
CIISGenObject::IISCreateObject();
|
|
|
|
HRESULT
|
|
CIISGenObject::CacheMetaDataPath();
|
|
|
|
LPWSTR
|
|
CIISGenObject::ReturnMetaDataPath(VOID) {
|
|
return _pszMetaBasePath;
|
|
}
|
|
|
|
|
|
protected:
|
|
|
|
// Helper methods
|
|
HRESULT
|
|
ResolveExtendedChildPath(
|
|
IN BSTR RelativeChildPath,
|
|
OUT BSTR *pParentPath,
|
|
OUT BSTR *pParentClass
|
|
);
|
|
|
|
|
|
VARIANT _vFilter;
|
|
|
|
LPWSTR _pszServerName;
|
|
LPWSTR _pszMetaBasePath;
|
|
|
|
CPropertyCache FAR * _pPropertyCache;
|
|
|
|
CAggregatorDispMgr FAR * _pDispMgr;
|
|
|
|
CADsExtMgr FAR * _pExtMgr;
|
|
|
|
CCredentials _Credentials;
|
|
|
|
IMSAdminBase *_pAdminBase; //interface pointer
|
|
IIsSchema *_pSchema;
|
|
|
|
private:
|
|
bool CheckIsW3(LPCWSTR pszPath);
|
|
};
|
|
|
|
|