Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#25

AW: Tapi Callback Funktion darf nicht in Klasse sein

  Alt 26. Nov 2012, 17:17
Das Weiterleiten einer Callback-Funktion auf die Callback-Methode ist doch ganz einfach!
Delphi-Quellcode:
procedure priv_MyCallback(hDevice,
                          dwMsg,
                          dwCallbackInstance,
                          dwParam1,
                          dwParam2,
                          dwParam3: Cardinal); stdcall;
begin
  if dwCallbackInstance = 0 then
  begin
    // Oh ohhh, das sollte nie vorkommen (wäre ganz klar ein Fehler des Programmierers)
    Assert(False);
  end
  else
  begin
     try
        TMyTapi(dwCallbackInstance).MyCallback(hDevice,
                          dwMsg,
                          dwParam1,
                          dwParam2,
                          dwParam3);
    except
       // Exception loggen oder anzeigen
       // auf jeden Fall sollte keine Exception dem Aufrufer um die Ohren fliegen
    end;
  end;
end;
Andreas

Geändert von shmia (26. Nov 2012 um 17:21 Uhr)
  Mit Zitat antworten Zitat