Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DLL callback [D5, D6, D7]


Andrew2 ©   (2002-11-30 03:17:00) 

Никак не могу передать в DLL адрес процедуры из загрузившего его приложения, чтобы дергать его из DLL. Поделитесь примером кода!
Спасибо.


Юрий Зотов   (2002-11-30 10:44:00) [1]

В DLL:

type
TEnumProc = function(I: integer; Data: pointer): boolean;

procedure EnumNumbers(Proc: TEnumProc; Data: pointer);
var
i: integer;
begin
if Assigned(Proc) then
for i := 1 to 3 do
if Proc(i, Data) then Break
end;

===========

В Exe:

function CallBack(I: integer; Data: pointer): boolean;
begin
Result := Data = nil;
if not Result then TMemo(Data).Lines.Add(IntToStr(I)
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
EnumNumbers(@CallBack, Memo1)
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо