////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 2001 Microsoft Corporation // // Module Name: // MetabaseObject.h // // Description: // Copied from %fp%\server\source\msiis\metabase.cpp // Opens the Metabse for accessing information about // IIS. For example, to make sure it is installed correctly // and make sure ASP is turned on. // // Implementation Files: // MetabaseObject.cpp // // History: // travisn 2-AUG-2001 Created // ////////////////////////////////////////////////////////////////////////////// #pragma once ////////////////////////////////////////////////////////////////////////////// // Include Files ////////////////////////////////////////////////////////////////////////////// #include // for MD_* constants #include // METADATA_HANDLE et al #include ////////////////////////////////////////////////////////////////////////////// // CMetabaseObject definition ////////////////////////////////////////////////////////////////////////////// class CMetabaseObject { public: ///////////////////////////////////////////////////////////////////////// //Default Constructor CMetabaseObject() : m_pIAdmCom(0) , m_isOpen(FALSE) , m_handle(0) { } ///////////////////////////////////////////////////////////////////////// //Destructor ~CMetabaseObject(); ///////////////////////////////////////////////////////////////////////// HRESULT init(); ///////////////////////////////////////////////////////////////////////// HRESULT openObject(const WCHAR *path); ///////////////////////////////////////////////////////////////////////// HRESULT closeObject(); ///////////////////////////////////////////////////////////////////////// //HRESULT getData( // DWORD property, // Wstring& value, // DWORD userType = IIS_MD_UT_SERVER, // LPCWSTR path = 0, // BOOL inherited = TRUE, // DWORD dataType = STRING_METADATA); ///////////////////////////////////////////////////////////////////////// //HRESULT enumerateObjects( // LPCWSTR pszMDPath, // LPWSTR pszMDName, // at least METADATA_MAX_NAME_LEN long // DWORD dwMDEnumKeyIndex); private: ///////////////////////////////////////////////////////////////////////// IMSAdminBase *m_pIAdmCom; METADATA_HANDLE m_handle; BOOL m_isOpen; };