Форум: "Основная";
Текущий архив: 2011.11.06;
Скачать: [xml.tar.bz2];
ВнизТребования для функционирования QueryInterface ??? Найти похожие ветки
← →
GreyWolf © (2010-04-13 20:24) [0]Доброго времени суток.
Я в TypeLibrary редакторе создал свой интерфейс (IInt1) из TypeLib1, отнаследовав его от другого моего же (IInt2) из TypeLib2. Сам IInt2 наследуется от IDispatch.
Я считал, что этого наследования достаточно, чтобы можно было приводить тип IInt1 к IInt2, через опреатор as или QueryInterface. Но при попытке это сделать QueryInterface выдает $80004002 - E_NOINTERFACE - { No such interface supported }, оператор as также на работает. При этом IInt1 приводится к IDispatch или IInt1 (самому себе) без проблем. Пробовал регистрировать обе библиотеки, не помогло.
Что может быть не так?
← →
~AQUARIUS~ © (2010-04-13 20:49) [1]Я так понял, у вас примерно такая схема:
type
I1 = interface (IUnknown)
* * *
end;
I2 = interface (I1)
* * *
end;
T2 = class (TInterfacedObject, I2)
* * *
end;
В результате QueryInterface "не видит" I1. Если так, то просто измените обьявление класса:
type
T2 = class (TInterfacedObject, I2, I1)
* * *
end;
← →
Игорь Шевченко © (2010-04-13 20:53) [2]реализация интерфейсов не наследуется
← →
GreyWolf © (2010-04-14 19:57) [3]> ~AQUARIUS~ © (13.04.10 20:49) [1]
Было что-то вроде этого, ваша рекомендация помогла.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2011.11.06;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.002 c