Das @ bei der Zuweisung ist nicht nötig, denn das macht Delphi implizit, da es weiß, daß bei der zuweisung die Variable und nicht der Funktionsaufruf gemeint ist.
In seiner Funktion ist Func sowieso kein Funktions-Zeiger, sondern ein Pointer und da wäre @ eigentlich total falsch.
Aber tausch mal probehalber dein
LoadFunction(@pdfGetNumPages, 'pdfGetNumPages');
gegen
pdfGetNumPages := GetProcAddress(FDLL_Handle, 'pdfGetNumPages');
.
Vielleicht muß es ja anders sein.
Delphi-Quellcode:
procedure LoadFunction(Func: PPointer; const FuncName: AnsiString);
begin
if Func^ = nil then begin
Func^ := GetProcAddress(FD
PS:
raise Exception.CreateFmt('Error loading function: "%s"', [FuncName]);
... da kennt Delphi auch was Fertiges