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.

78 lines
2.9 KiB

  1. /********************************************************************
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. PCH_StartUp.H
  5. Abstract:
  6. WBEM provider class definition for PCH_StartUp class
  7. Revision History:
  8. Ghim-Sim Chua (gschua) 04/27/99
  9. - Created
  10. ********************************************************************/
  11. // Property set identification
  12. //============================
  13. #ifndef _PCH_StartUp_H_
  14. #define _PCH_StartUp_H_
  15. #define PROVIDER_NAME_PCH_STARTUP "PCH_StartUp"
  16. // Property name externs -- defined in PCH_StartUp.cpp
  17. //=================================================
  18. extern const WCHAR* pTimeStamp ;
  19. extern const WCHAR* pChange ;
  20. extern const WCHAR* pCommand ;
  21. extern const WCHAR* pLoadedFrom ;
  22. extern const WCHAR* pName ;
  23. class CPCH_StartUp : public Provider
  24. {
  25. public:
  26. // Constructor/destructor
  27. //=======================
  28. CPCH_StartUp(const CHString& chsClassName, LPCWSTR lpszNameSpace) : Provider(chsClassName, lpszNameSpace) {};
  29. virtual ~CPCH_StartUp() {};
  30. protected:
  31. // Reading Functions
  32. //============================
  33. virtual HRESULT EnumerateInstances(MethodContext* pMethodContext, long lFlags = 0L);
  34. virtual HRESULT GetObject(CInstance* pInstance, long lFlags = 0L) { return (WBEM_E_PROVIDER_NOT_CAPABLE); };
  35. virtual HRESULT ExecQuery(MethodContext *pMethodContext, CFrameworkQuery& Query, long lFlags = 0L) { return (WBEM_E_PROVIDER_NOT_CAPABLE); };
  36. // Writing Functions
  37. //============================
  38. virtual HRESULT PutInstance(const CInstance& Instance, long lFlags = 0L) { return (WBEM_E_PROVIDER_NOT_CAPABLE); };
  39. virtual HRESULT DeleteInstance(const CInstance& Instance, long lFlags = 0L) { return (WBEM_E_PROVIDER_NOT_CAPABLE); };
  40. // Other Functions
  41. virtual HRESULT ExecMethod( const CInstance& Instance,
  42. const BSTR bstrMethodName,
  43. CInstance *pInParams,
  44. CInstance *pOutParams,
  45. long lFlags = 0L ) { return (WBEM_E_PROVIDER_NOT_CAPABLE); };
  46. private:
  47. virtual HRESULT UpdateRegistryInstance(
  48. HKEY hkeyRoot, // [in] Name of the Startup Instance
  49. LPCTSTR lpctstrRegistryHive, // [in] Registry/StartupGroup
  50. CComVariant varLoadedFrom, // [in] Command of the startup Instance
  51. SYSTEMTIME stUTCTime, // [in]
  52. MethodContext* pMethodContext // [in]
  53. );
  54. virtual HRESULT UpdateStartupGroupInstance(
  55. int nFolder, // [in] Registry hive to look for startup entries
  56. SYSTEMTIME stUTCTime, // [in]
  57. MethodContext* pMethodContext // [in] Instance is created by the caller.
  58. );
  59. } ;
  60. #endif