Я работаю над этим проектом, где у нас нет исходного кода для больших частей проекта, но у нас есть файлы .DLL с некоторой информацией. В файлах DLL есть ошибка. Я могу создать подкласс класса с ошибкой в нем, и я хотел бы уменьшить значение объекта, который уже существует в точке, к которой у меня есть доступ. Проблема в том, что в любой момент у меня есть доступ к объекту, он разыгрывается как вариант. Я пробовал следующее (отредактировано для удаления контекста):
tempSubclass := Subclass(ParentClass(Integer(oleVariantCast)));
но я получаю следующую ошибку:
Could not convert variant of type (Dispatch) into type (Integer)
Есть ли другой способ получить указатель на объект из OleVariant и / или выполнить ли приведение типа?
Спасибо.
РЕДАКТИРОВАТЬ: Да, Parentclass реализует IDispatch.
ИСПРАВЛЕНИЕ: Родительский класс реализует интерфейс, который наследуется от IDispatch.