Показать сообщение отдельно
  #1  
Старый 04.12.2007, 00:39
alolya alolya вне форума
Прохожий
 
Регистрация: 25.09.2007
Сообщения: 5
Репутация: 10
По умолчанию Интерфейс для передачи класса в dll

добрый день. Суть проблемы такова. В книжке нашел пример:

procedure IsFont (O:TObject);
begin

if O is TFont then
ShowMessage ('Font')
else ShowMessage ('Not Font');
end;

Когда данный пример в главной форме то все работает корректно, но стоит его поместить в dll и добавить в ней строчку:

exports IsFont name 'IsFont';

потом вызвать функцию из главного модуля, так перестает работать. В книжке написано, что так и должно быть и спасение нужно искать в интерфейсах.

Может что-то не так делаю, но создал в той же dll класс и описал в нем интерфейс, в котором и вышеупомянутую функцию + ее реализация в классе. и сделал экспорт функции, которая создает этот класс, чтобы из главного модуля можно было юзать интерфейс. снова вызываю из главной формы указатель_на_класс_в_dll. IsFont (Tfont) , и всё равно не работает.
Ответить с цитированием