[Lazarus-es] Convenciones de librerías

Giuseppe Luigi Punzi glpunzi en lordzealon.com
Sab Abr 9 16:13:25 CEST 2011


Hola a todos, debido a que el Wiki de Lazarus no funciona, no puedo 
consultar estos temas sobre DLLs en ella, por lo que recurro a vosotros.

Veamos, me he creado una pequeña librería, que contiene el siguiente código.

library pruebalibreria;

{$mode objfpc}{$H+}

uses
   Classes
   { you can add units after this }, Dialogs, Interfaces;

{$R *.res}

procedure pruebaMensaje (mensaje : string); stdcall;
begin
   ShowMessage(mensaje) ;
end;

begin
end.

Compila bien y tengo mi "pruebaLibreria.dll" y ahora quiero llamarla 
desde otro sitio. En el entorno donde trabajo, a la hora de crear las 
DLL's y sus funciones, me pide la convención de éstas, y tengo las 
siguientes opciones.

http://img853.imageshack.us/i/convencionesdll.jpg/

Y en la declaración de las funciones, he declarado:
http://img59.imageshack.us/i/funciondll.jpg/

Mi aplicación no muestra el mensaje al hacer la llamada, y puede que el 
error no esté en la DLL, si no en como la llamo desde mi aplicación, 
pero antes de pegarme con éso, me gustaría saber si el error puede venir 
por el tema de las convenciones, y no sé, cuál es la convención que saca 
por defecto Lazarus/Freepascal.

Es la primera vez que programo librerías, por lo que estoy muy pez en 
este tema, y no sé cual debo elegir.

Muchas gracias.




More information about the Lazarus-es mailing list