Hier die Lösung:
(was lange währt wird endilch gut heisst es doch?
)
Delphi-Quellcode:
// constructor
//
constructor PhService.Create;
var
t: TMethod;
begin
t.Code := @PhService.serviceproc;
t.Data := self;
m_serviceProcInst := MakeProcInstance(t);
// m_serviceProcInst ist ein normaler Pointer, der an die API übergeben wird
end;
// destructor
//
destructor PhService.Destroy;
begin
FreeProcInstance(m_serviceProcInst);
// aufräumen
inherited;
end;