1 // ObjectMap.h : CObjectMap
\82Ì
\90é
\8c¾
6 #include "resource.h" //
\83\81\83C
\83\93 \83V
\83\93\83{
\83\8b
11 typedef map<_bstr_t,VARIANT> VariantMap;
13 /////////////////////////////////////////////////////////////////////////////
15 class ATL_NO_VTABLE CObjectMap :
16 public CComObjectRootEx<CComSingleThreadModel>,
17 public CComCoClass<CObjectMap, &CLSID_ObjectMap>,
18 public ISupportErrorInfo,
19 public IDispatchImpl<IObjectMap, &IID_IObjectMap, &LIBID_SERAPHYSCRIPTTOOLSLib>
28 ATLTRACE("CObjectMap::FinalRelease\n");
31 DECLARE_REGISTRY_RESOURCEID(IDR_OBJECTMAP)
33 DECLARE_PROTECT_FINAL_CONSTRUCT()
35 BEGIN_COM_MAP(CObjectMap)
36 COM_INTERFACE_ENTRY(IObjectMap)
37 COM_INTERFACE_ENTRY(IDispatch)
38 COM_INTERFACE_ENTRY(ISupportErrorInfo)
42 STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
46 STDMETHOD(SaveProfile)(/*[in]*/IUnknown* punkVal);
47 STDMETHOD(LoadProfile)(/*[in]*/IUnknown* punkVal);
48 STDMETHOD(Erase)(/*[in]*/VARIANT key);
49 STDMETHOD(get_IsExist)(/*[in]*/VARIANT key, /*[out, retval]*/ BOOL *pVal);
50 STDMETHOD(ExpandVariables)(/*[in]*/VARIANT text,/*[in,optional]*/VARIANT env,/*[out,retval]*/VARIANT* pVal);
51 STDMETHOD(get_NearValue)(/*[in]*/VARIANT key,/*[out,retval]*/VARIANT* pVal);
52 STDMETHOD(FindNear)(/*[in]*/VARIANT key,/*[out,retval]*/VARIANT* pVal);
53 STDMETHOD(get__NewEnum)(/*[out, retval]*/ IUnknown* *pVal);
54 STDMETHOD(CreateMap)(/*[out,retval]*/IUnknown** punkVal);
55 STDMETHOD(Duplicate)(/*[out,retval]*/IUnknown** punkVal);
57 STDMETHOD(get_Count)(/*[out, retval]*/ long *pVal);
58 STDMETHOD(get_Value)(/*[in]*/VARIANT key, /*[out, retval]*/ VARIANT *pVal);
59 STDMETHOD(put_Value)(/*[in]*/VARIANT key, /*[in]*/ VARIANT newVal);
61 VariantMap m_mapVariant;
64 #endif //__OBJECTMAP_H_