84 lines
1.6 KiB
C++
84 lines
1.6 KiB
C++
//---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1997
|
|
//
|
|
// File: cenumobj.hxx
|
|
//
|
|
// Contents: IIS Object Enumeration Code
|
|
//
|
|
// History: 21-Feb-97 SophiaC Created.
|
|
//----------------------------------------------------------------------------
|
|
class FAR CIISGenObjectEnum : public CIISEnumVariant
|
|
{
|
|
public:
|
|
CIISGenObjectEnum(ObjectTypeList ObjList);
|
|
CIISGenObjectEnum();
|
|
~CIISGenObjectEnum();
|
|
|
|
HRESULT
|
|
EnumObjects(
|
|
ULONG cElements,
|
|
VARIANT FAR * pvar,
|
|
ULONG FAR * pcElementFetched
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
CIISGenObjectEnum::Create(
|
|
CIISGenObjectEnum FAR* FAR* ppenumvariant,
|
|
BSTR ADsPath,
|
|
VARIANT var,
|
|
CCredentials& Credentials
|
|
);
|
|
|
|
private:
|
|
|
|
DWORD _dwObjectCurrentEntry;
|
|
BSTR _ADsPath;
|
|
LPWSTR _pszServerName;
|
|
LPWSTR _pszMetaBasePath;
|
|
IMSAdminBase *_pAdminBase; //interface pointer
|
|
IIsSchema *_pSchema;
|
|
|
|
CCredentials _Credentials;
|
|
|
|
HRESULT
|
|
CIISGenObjectEnum::GetGenObject(
|
|
IDispatch ** ppDispatch
|
|
);
|
|
|
|
HRESULT
|
|
EnumGenericObjects(
|
|
ULONG cElements,
|
|
VARIANT FAR* pvar,
|
|
ULONG FAR* pcElementFetched
|
|
);
|
|
|
|
|
|
STDMETHOD(Next)(
|
|
ULONG cElements,
|
|
VARIANT FAR* pvar,
|
|
ULONG FAR* pcElementFetched
|
|
);
|
|
};
|
|
|
|
|
|
HRESULT
|
|
BuildIISFilterArray(
|
|
VARIANT var,
|
|
LPBYTE * ppContigFilter
|
|
);
|
|
|
|
void
|
|
FreeFilterList(
|
|
LPBYTE lpContigFilter
|
|
);
|
|
|
|
LPBYTE
|
|
CreateAndAppendFilterEntry(
|
|
LPBYTE pContigFilter,
|
|
LPWSTR lpObjectClass
|
|
);
|
|
|