Leaked source code of windows server 2003
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.

68 lines
2.1 KiB

  1. // RequestObject.h: interface for the CRequestObject class.
  2. // Copyright (c)1997-1999 Microsoft Corporation
  3. //
  4. //////////////////////////////////////////////////////////////////////
  5. #if !defined(AFX_REQUESTOBJECT_H__c5f6cc21_6195_4555_b9d8_3ef327763cae__INCLUDED_)
  6. #define AFX_REQUESTOBJECT_H__c5f6cc21_6195_4555_b9d8_3ef327763cae__INCLUDED_
  7. #if _MSC_VER >= 1000
  8. #pragma once
  9. #endif // _MSC_VER >= 1000
  10. class CGenericClass;
  11. class CRequestObject
  12. {
  13. public:
  14. CRequestObject();
  15. virtual ~CRequestObject();
  16. void Initialize(IWbemServices *pNamespace);
  17. HRESULT CreateObject(BSTR bstrPath, IWbemObjectSink *pHandler, IWbemContext *pCtx);
  18. HRESULT CreateObjectEnum(BSTR bstrPath, IWbemObjectSink *pHandler, IWbemContext *pCtx);
  19. HRESULT PutObject(IWbemClassObject *pInst, IWbemObjectSink *pHandler, IWbemContext *pCtx);
  20. HRESULT ExecMethod(BSTR bstrPath, BSTR bstrMethod, IWbemClassObject *pInParams,
  21. IWbemObjectSink *pHandler, IWbemContext *pCtx);
  22. HRESULT DeleteObject(BSTR bstrPath, IWbemObjectSink *pHandler, IWbemContext *pCtx);
  23. bool ParsePath(BSTR bstrPath);
  24. bool Cleanup();
  25. BSTR m_bstrClass;
  26. BSTR m_bstrPath;
  27. BSTR m_Property[POD_KEY_LIST_SIZE];
  28. BSTR m_Value[POD_KEY_LIST_SIZE];
  29. int m_iPropCount;
  30. int m_iValCount;
  31. IWbemServices *m_pNamespace;
  32. IWbemObjectSink *m_pHandler;
  33. private:
  34. HRESULT CreateClass(CGenericClass **pClass, IWbemContext *pCtx);
  35. bool IsInstance();
  36. static CHeap_Exception m_he;
  37. protected:
  38. ULONG m_cRef; //Object reference count
  39. };
  40. //Properties
  41. //////////////////
  42. extern const WCHAR *pSceStorePath;
  43. extern const WCHAR *pLogFilePath;
  44. extern const WCHAR *pLogFileRecord;
  45. extern const WCHAR *pLogArea;
  46. extern const WCHAR *pLogErrorCode;
  47. extern const WCHAR *pKeyName;
  48. extern const WCHAR *pKey;
  49. extern const WCHAR *pValue;
  50. extern const WCHAR *pPodID;
  51. extern const WCHAR *pPodSection;
  52. extern const WCHAR *szPodGUID;
  53. #endif // !defined(AFX_REQUESTOBJECT_H__c5f6cc21_6195_4555_b9d8_3ef327763cae__INCLUDED_)