Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Ошибка при вызове подсказки в DLL


Автор: Rakhim 31.1.2009, 18:32
В есть Dll в которой вызывается форма.
Если навести мышкой на компонент не выходит подсказка (текст написанный в поле Hint) 
Выходит следующая ошибка -
'Cannot assign a TFont to a TFont'

Вот код, может что-то еще нужно присвоить с главного приложения
Код

var
  Dll_Application: TApplication;
  Dll_Screen: TScreen;

function Get_Form_Class(Number_Form: Integer; MainApp: TApplication;
  MainScreen:TScreen): TAbstractClass;
begin
  // присвоение с главного приложения
  if not Assigned(Dll_Application) then
  begin
    Dll_Application := Application;
  end;

  if not Assigned(Dll_Screen) then
  begin
    Dll_Screen := Screen;
  end;

  Application := MainApp;
  Screen:= MainScreen;

  case Number_Form of
    1: Result:= TfmNavigator;
    2: Result:= TfmList_El_Dvig_Not_Kran;
   15: Result:= TfmSertifikat_Dvig;
  else
    Result:=nil;
  end; //case
end;

Автор: Rrader 31.1.2009, 18:49
Rakhim, передача объектов из приложения в DLL небезопасна. Вот закон Мерфи и выполнился.

Почитай http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=831, чудо шестое.

Пройди еще http://www.delphikingdom.com/quintana/quintana.asp?ItemID=13 smile Многое узнаешь smile 

Автор: Rakhim 1.2.2009, 10:59
Rrader, спасибо

Я так понял что лучше перейти на BPL.

Не подскажете ссылка на ток как работать с BPL.
Как загружать и выгружать пакета?
Как вызывать функции? 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)