<p>Thanks a lot Ludo. Until tomorrow at evening I will not be able to test it in Mac. So tomorrow as soon I can copy mesages I'll type them here.<br>
Regards.<br>
Juan.</p>
<div class="gmail_quote">El 07/08/2011 20:11, "Ludo Brands" <<a href="mailto:ludo.brands@free.fr">ludo.brands@free.fr</a>> escribió:<br type="attribution">> <br>>  <br>> <br>> It went all right with dynamic loading. "liknlib" gives me and error in<br>
> linking time. So I think runtime loading of dll is better. What I don't know<br>> is what it's necessary rename functions with "_" at starting in Mac. Is it a<br>> bug?<br>> Regards.<br>> Juan.<br>
> <br>> It is not a bug. dlsym, the function used to find the address assumes C type<br>> of function names which are prefixed with _. Pascal doesn't prefix exported<br>> functions with _. See<br>> <a href="http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPa">http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPa</a><br>
> ges/man3/dlsym.3.html, down the page, notes.<br>>  <br>> <br>> To make porting easier you can use the alias modifier with $ifdef like this:<br>>  <br>> function DllMessage(): Longint; {$ifdef darwin} alias : '_DllMessage';<br>
> {$endif}<br>> ...<br>> exports DllMessage;<br>>  <br>> This way, the function will be exported as  _DllMessage on Darwin only,<br>> DllMessage on other platforms.<br>>  <br>> Ludo<br></div>