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.

65 lines
2.0 KiB

  1. // WzScrEng.h : Declaration of the CWizardScriptingEngine
  2. #ifndef __WIZARDSCRIPTINGENGINE_H_
  3. #define __WIZARDSCRIPTINGENGINE_H_
  4. #include "resource.h" // main symbols
  5. #include "ChainWiz.h"
  6. /////////////////////////////////////////////////////////////////////////////
  7. // CWizardScriptingEngine
  8. class ATL_NO_VTABLE CWizardScriptingEngine :
  9. public CComObjectRootEx<CComSingleThreadModel>,
  10. public CComCoClass<CWizardScriptingEngine, &CLSID_WizardScriptingEngine>,
  11. public IDispatchImpl<IWizardScriptingEngine, &IID_IWizardScriptingEngine, &LIBID_WIZCHAINLib>
  12. {
  13. private:
  14. CComObject<CChainWiz>* m_pCW;
  15. HBITMAP m_hbmLarge;
  16. HBITMAP m_hbmSmall;
  17. public:
  18. CWizardScriptingEngine( )
  19. {
  20. m_pCW = NULL;
  21. m_hbmLarge = NULL;
  22. m_hbmSmall = NULL;
  23. }
  24. ~CWizardScriptingEngine()
  25. {
  26. if( m_pCW )
  27. {
  28. m_pCW->Release();
  29. }
  30. if( m_hbmLarge )
  31. {
  32. DeleteObject ((HGDIOBJ)m_hbmLarge);
  33. }
  34. if( m_hbmSmall )
  35. {
  36. DeleteObject ((HGDIOBJ)m_hbmSmall);
  37. }
  38. }
  39. DECLARE_REGISTRY_RESOURCEID(IDR_WIZARDSCRIPTINGENGINE)
  40. DECLARE_NOT_AGGREGATABLE(CWizardScriptingEngine)
  41. DECLARE_PROTECT_FINAL_CONSTRUCT()
  42. BEGIN_COM_MAP(CWizardScriptingEngine)
  43. COM_INTERFACE_ENTRY(IWizardScriptingEngine)
  44. COM_INTERFACE_ENTRY(IDispatch)
  45. END_COM_MAP()
  46. // IWizardScriptingEngine
  47. public:
  48. STDMETHOD(get_ScriptablePropertyBag)( /*[out, retval]*/ IDispatch** pVal );
  49. STDMETHOD(DoModal )( /*[out,retval]*/ long* lRet );
  50. STDMETHOD(AddWizardComponent )( /*[in]*/ BSTR bstrClassIdOrProgId );
  51. STDMETHOD(Initialize )( /*[in]*/ BSTR bstrWatermarkBitmapFile, /*[in]*/ BSTR bstrHeaderBitmapFile, /*[in]*/ BSTR bstrTitle, /*[in]*/ BSTR bstrWelcomeHeader, /*[in]*/ BSTR bstrWelcomeText, /*[in]*/ BSTR bstrFinishHeader, /*[in]*/ BSTR bstrFinishIntroText, /*[in]*/ BSTR bstrFinishText );
  52. };
  53. #endif //__WIZARDSCRIPTINGENGINE_H_