Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   No me devuelve valor un funccion creada dentro de una DLL (https://www.clubdelphi.com/foros/showthread.php?t=30719)

albertoP 16-04-2006 08:56:32

No me devuelve valor un funccion creada dentro de una DLL
 
Hola:

Código Delphi [-]
library MinMax;
function Min(X, Y: Integer): Integer; stdcall;
begin
if X < Y then Min := X else Min := Y;
end;
function Max(X, Y: Integer): Integer; stdcall;
begin
if X > Y then Max := X else Max := Y;
end;
exports
Min,
Max;
begin
end.

Este es el codigo de ejemplo para una DLL, ahora cuando intento recuperarla desde mi APP no me sale:(Aqui les pego el codigo de mi UNIt para que me ayuden a saber como recupero el valor)

Código Delphi [-]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
procedure MensajeDll(msg:String); external 'dll.dll';
function min(x,y:Integer):Integer; external 'dll.dll';
 
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var a:Integer;
begin
ShowMessage(IntToStr(min(2,3)));
end;

saludos desde ya muchas gracias

Robert01 16-04-2006 17:08:38

disculpa pero donde está el procedimiento mensajedll en la dll? a mi también me da un error aunque no use el procedimiento (dice que no encuentra el punto de entrada).

buscá en la ayuda, hay un ejemplo con la función minmax que andaba bien

saludos

Kosmo 17-04-2006 10:43:58

en lugar de "stdcall" en la dll pon "export", deberia funcionar

luisgutierrezb 17-04-2006 21:58:54

Bueno, primero dices que se llama la dll minmax.dll, y luego la mandas llamar como dll.dll, otra, si usas el stdcall, tambien debes usarlo al momento de declarar la funcion en la forma que manda llamar la dll


La franja horaria es GMT +2. Ahora son las 22:31:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi