Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.929 Beiträge
 
Delphi 12 Athens
 
#7

Re: Event für Funktion in einer "fremden" DLL

  Alt 26. Feb 2008, 09:10
[quote="hirnstroem"]
int setReceiveCallBack( CANHANDLE h, LPFNDLL_RECEIVE_CALLBACK cbfn )

void fn( CANMsg *pMsg );

Delphi-Quellcode:

type TCallBackEvent : procedure(var MsgBuf: CANMsg);

var Callback : TCallBackEvent;

function canusb_setReceiveCallBack(h: DWord; LPFNDLL_RECEIVE_CALLBACK: TCallBackEvent) : CANUSB_Result; stdcall ; External 'canusbdrv.dllname 'canusb_setReceiveCallBack';

procedure OnReceiveMessage(var MsgBuf: CANMsg);
Begin
  //Do something
end;

Procedure TMyprogram.INIT;
Begin
  Callback := OnReceiveMessage;
  canusb_setReceiveCallBack(h,Callback); // @OnReceivemessage geht vermutlich auch, aber
                                         // ich hab sowas immer über Proceduraletypen gemacht.
end;
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat