如何添加BEGIN_PROP_MAP和END_PROP_MAP之间的内容呢?有编译错误
我用vc2012建立一个ATL的工程,添加一个ATL简单对象,然后在类视图里面:
(1)为接口添加一个属性。
(2)为类添加一个成员。
IDE会为我增加一些代码,如下:
STDMETHOD(get_str)(BSTR* pVal);
STDMETHOD(put_str)(BSTR newVal);
CComBSTR m_str;
STDMETHOD(get_integer)(long* pVal);
STDMETHOD(put_integer)(long newVal);
long m_integer;
class ATL_NO_VTABLE CMyPP :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CMyPP, &CLSID_MyPP>,
public IDispatchImpl<IMyPP, &IID_IMyPP, &LIBID_Sample18Lib, /*wMajor =*/ 1, /*wMinor =*/ 0>,
public IPersistPropertyBagImpl<CMyPP>// 手工添加派生类
......
BEGIN_PROP_MAP(CMyPP)
// 参数:"属性名称", 接口属性序号(见IDL文件), 属性页对话窗
PROP_ENTRY_EX("str", 1, __uuidof(MyPP), CLSID_NULL)
PROP_ENTRY_EX("integer", 2, __uuidof(MyPP), CLSID_NULL)
END_PROP_MAP()