Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   dll delphi funcion capturar resultado (https://www.clubdelphi.com/foros/showthread.php?t=72634)

JXJ 02-03-2011 22:04:56

dll delphi funcion capturar resultado
 
estoy ahora trabajando con delphi

y tengo esta funcione

en la dll
Código Delphi [-]
function DisplayMsg(s:String):Boolean;stdcall;
 
function DisplayMsg; external 'Mydll.dll' Name 'DisplayMsg';stdcall;
 
 
 
 
function DisplayMsg(s:String):Boolean;stdcall;
begin
 ShowMessage(s);
    Result := True;
end;
y la llamo asi desde una apliacion GUI

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
 DisplayMsg(edtString.Text);
end;

en este caso la respuesta es de tipo Boolean

como puede saber si la respuesta es false o true
si la cadena no lleva nada es FALSE
si lleva algo es TRUE

¿pero como lo capturo en la aplicacion GUI?


ya despues queiro poder
regresar mas valores

por jemplo
si la funcion regresa mejor integer. en vez de Boolean

quiero manejar codigos asi.

0
1
2
3
4
5

o
texto.
SI
NO
NOPASO
ERROR4001

Ñuño Martínez 03-03-2011 10:12:33

JXJ, muchacho, ¡que se ha ofuscado el navegador! Ponle en orden que no te maneja bien las etiquetas [delphi]. ;)

Respecto a lo que preguntas de "cómo saber si es true" y tal, tienes varias formas, pero la más guay es esta:
Código Delphi [-]
FUNCTION DisplayMsg (s: STRING) :BOOLEAN; STDCALL;
BEGIN
  ShowMessage (s);
  RESULT := s <> ''
END;
Como ves, lo que hago es comparar la cadena y devolver el resultado de la comparación. Es equivalente a:
Código Delphi [-]
FUNCTION DisplayMsg (s: STRING) :BOOLEAN; STDCALL;
BEGIN
  ShowMessage (s);
  IF s <> '' THEN
    RESULT := TRUE
  ELSE
    RESULT := FALSE
END;
Lo demás ya no lo entiendo.:confused:

defcon1_es 03-03-2011 18:18:00

Código Delphi [-]
 procedure TForm1.Button1Click(Sender: TObject); 
begin 
  if DisplayMsg(edtString.Text)
  then ...//lo que quieras
end;


La franja horaria es GMT +2. Ahora son las 07:32:06.

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