// Copyright (c) 2000-2001 Microsoft Corporation, All Rights Reserved // JobObjectProv.h #pragma once typedef std::map SHORT2PVARIANT; typedef DWORD (*PFN_CHECK_PROPS)(CFrameworkQuery&); class CObjProps { public: CObjProps() {} CObjProps(CHString& chstrNamespace); virtual ~CObjProps(); HRESULT SetKeysFromPath( const BSTR ObjectPath, IWbemContext __RPC_FAR *pCtx, LPCWSTR wstrClassName, CHStringArray& rgKeyNameArray, short sKeyNum[]); HRESULT SetKeysDirect( std::vector& vecvKeys, short sKeyNum[]); void SetReqProps(DWORD dwProps); DWORD GetReqProps(); void ClearProps(); protected: SHORT2PVARIANT m_PropMap; HRESULT GetWhichPropsReq( CFrameworkQuery& cfwq, PFN_CHECK_PROPS pfnChk); HRESULT LoadPropertyValues( LPCWSTR rgwstrPropNames[], IWbemClassObject* pIWCO); private: DWORD m_dwReqProps; CHString m_chstrNamespace; };