Wczytywanie funkcji z plików *.dll

0

Potrzebuję wczytać kilka funkcji zawartych w pliku *.dll. Plik ten został stworzony w Visual C++.
Plik nagłówkowy dla Delphi tworzę na podstawie plik nagłowkowego dla Visual C++, który już istnieje.
Sprawa wydaje się dosyć prosta, bo:
w VC++ mamy:

int __stdcall tltmSetReadSessionDuration(HANDLE hHandle, unsigned int uiTag, int iDuration);

a w delphi:

Function tltmSetReadSessionDuration(hHandle:Cardinal; uiTag:Integer; iDuration:Integer):Integer; stdcall; external  'LibTSMap.dll' name 'tltmSetReadSessionDuration';

Wszytuję w delphi tą samą funkcję z pliku DLL.

Ale nie mam zielonego pojęcia, jak przekonwerterować następującą funkcję na pascal'a:

int __stdcall tltmStartReadingRawItems(HANDLE hHandle, unsigned int uiFieldsMask, BOOL boSetEAS, void (__stdcall *lpfnRawCallBack)(HANDLE hHandle, int iReasonForCall, struct tltmRawItem *myRawItem, void *pParam), void *pParam);

w tej funkcji "zaszyta jest procedura(funkcja, nie wiem). W dokumentacji znalazłem tylko informację, że ta zagnieżdżona procedura jest jakby Event'em wywoływaną w odpowiednim momencie.
Nie chodzi o to co ona robi ale jak "przetworzyć" taki zapis na język pascala.
Za słabo znam VC++, dlatego liczę na waszą pomoc.

pozdrawiam
Billy

0
TltmRawItem=record
...
end;
PltmRawItem=^TltmRawItem;
TlpfnRawCallBack=procedure(hHandle:Cardinal;iReasonForCall:Integer;myRawItem:PltmRawItem;pParam:Pointer);stdcall;
Function tltmStartReadingRawItems(hHandle:Cardinal;uiFieldsMask:Cardinal;boSetEAS:Word;lpfnRawCallBack:TlpfnRawCallBack;pParam:Pointer);stdcall; external  'LibTSMap.dll' name 'tltmStartReadingRawItems';
// boSetEAS:Word - musi być Word ponieważ BOOL to nie Boolean;

1 użytkowników online, w tym zalogowanych: 0, gości: 1