![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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;