Я неправильно понял, что вы говорите, но я получаю ту же ошибку, когда пытаюсь сделать это с интерфейсом.

отаю над этим проектом, где у нас нет исходного кода для больших частей проекта, но у нас есть файлы .DLL с некоторой информацией. В файлах DLL есть ошибка. Я могу создать подкласс класса с ошибкой в ​​нем, и я хотел бы уменьшить значение объекта, который уже существует в точке, к которой у меня есть доступ. Проблема в том, что в любой момент у меня есть доступ к объекту, он разыгрывается как вариант. Я пробовал следующее (отредактировано для удаления контекста):

tempSubclass := Subclass(ParentClass(Integer(oleVariantCast)));

но я получаю следующую ошибку:

Could not convert variant of type (Dispatch) into type (Integer)

Есть ли какой-нибудь другой способ получить указатель на объект из OleVariant и / или задействовать ли приведение типа?

Спасибо.

РЕДАКТИРОВАТЬ: Да, Parentclass реализует IDispatch. ИСПРАВЛЕНИЕ: Родительский класс реализует интерфейс, который наследуется от IDispatch.

Ответы на вопрос(2)

Ваш ответ на вопрос