Re[6]: .Net Core Вызов виртуальных методов нативных объектов
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 14.11.16 12:18
Оценка:
Здравствуйте, α, Вы писали:

α>Здравствуйте, Serginio1, Вы писали:


S>> В С++ определил класс

S>>class ICallback : public IUnknown

α>А упорядочить методы тут разве не надо? Т.е. сперва методы IUnknown, потом твой execute(). Что-то я уже подзабыл

α>PS А, это ж класс, а не интерфейс. Перепутал

так упорядочено по наследованию. IUnknown

вообще структура.

Переделал на
struct ICallback : IUnknown
    {
    public:
        
        


        // Унаследовано через IUnknown
        virtual HRESULT __stdcall QueryInterface(REFIID riid, void ** ppvObject) override;

        virtual ULONG __stdcall AddRef(void) override;

        virtual ULONG __stdcall Release(void) override;

        virtual HRESULT __stdcall execute();

    };


Эффект тот же.

Вызвано исключение по адресу 0x52684880 (coreclr.dll) в TestNetObjectToNative.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x963E0B26.


Подозреваю из-за IProvideClassInfo.

Я на С++ пишу раз в год.
и солнце б утром не вставало, когда бы не было меня
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.