lName := lClassName(); // parenthesis!
type TGetClassName = function: String; stdcall; var lName: String; lClassName: TGetClassName; lHandle: TLibHandle; begin lHandle := dynlibs.LoadLibrary('project1.dll'); if lHandle = dynlibs.NilHandle then Exit; lClassName := TGetClassName(dynlibs.GetProcedureAddress(lHandle, 'GetClassName')); lName := lClassName; //compiling error goes here end;
I do exactly as in Delphi but the compiler accuses error in Lazarus
lName := lClassName();