Простой вопрос
От: atos256  
Дата: 02.08.07 10:37
Оценка:
Даже не удобно задавать... Но я только начинаю знакомство с ATL.
Есть такой класс:

class ATL_NO_VTABLE CNameProvider :
    public CComObjectRootEx<CComSingleThreadModel>,
    public CComCoClass<CNameProvider, &CLSID_NameProvider>,
    public IDispatchImpl<INameProvider, &IID_INameProvider, &LIBID_NameLib, /*wMajor =*/ 1, /*wMinor =*/ 0>,
    public ICredentialProvider
{
public:
    //CMatchLogonProvider()
    //{
    //}

DECLARE_REGISTRY_RESOURCEID(IDR_NAMEPROVIDER)


BEGIN_COM_MAP(CNameProvider)
    COM_INTERFACE_ENTRY(INameProvider)
    COM_INTERFACE_ENTRY(IDispatch)
    COM_INTERFACE_ENTRY(ICredentialProvider)
END_COM_MAP()
....


При попытке создать экземпляр этого класса пишет что нельзя создавать экземпляр абстрактного класса.
Что не определены QueryInterface, Release и AddReff.
Но как я понимаю эти методы должны вставлять макросы и их не нужно реализовывать в ручную.
Или их реально надо в ручную писать? Помогите неучу...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.