Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 11-05-2012
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 24
JXJ Va por buen camino
hola

LoPiTaL

gracias por tu atencion.
aun me queda un problema


una duda sobre la variable que recibe el valor de la dll
arregle asi

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExceptionLog;

type
    TDLLFunc = function(param1: PAnsiChar ; param2: PAnsiChar ; param3: PAnsiChar ; param4: PAnsiChar ): AnsiChar  ;

type
  TForm1 = class(TForm)
    Button1: TButton;
    EurekaLog1: TEurekaLog;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

  { assign a nil - not loaded function }

  {assign a nil - not loaded function}
 const
   DLLFunc: TDLLFunc = nil;
   DLLName = 'inicio.DLL';
 {handle of loaded dll}
 var
  DLLHandle: THandle;

implementation

{$R *.dfm}
function suma(parametro1: PAnsiChar ; parametro2: PAnsiChar ; parametro3:PAnsiChar ; parametro4:PAnsiChar ): AnsiChar;
              stdcall; far; external 'inicio.DLL';

procedure TForm1.FormCreate(Sender: TObject);
var
  resultadosuma: string;
begin
  DLLHandle := LoadLibrary(DLLName);

  if (DLLHandle < HINSTANCE_ERROR) then
    raise Exception.Create(DLLName + ' library can not be loaded or not found. ' + SysErrorMessage(GetLastError));
  try
    @DLLFunc := GetProcAddress(DLLHandle, 'suma');
    if Assigned(DLLFunc) then
    begin

resultadosuma :=    suma(
                     PansiChar(AnsiString('a1')),
                     PansiChar(AnsiString('b2')),
                     PansiChar(AnsiString('c3')),
                     PansiChar(AnsiString('d4'))
                     );
    end;
  finally
    FreeLibrary(DLLHandle);
  end;

   ShowMessage( ' el resultado es '+ resultadosuma);

end;

end.


Código Delphi [-]
var
  resultadosuma: string;
begin

   ShowMessage( ' el resultado es '+  resultadosuma);
end

en el show message obtengo un 3

y se supone que deberia de ser un 3333

bueno una cadena de cuatro 3

en delphi 2010 no me dejsa usar strpas


que no se puede llamar con esos argumentos
Código Delphi [-]
var
  resultadosuma: string;
begin

   ShowMessage( ' el resultado es '+ StrPas(resultadosuma));
end
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como instalo ZeosLib en Delphi 2010 jorosmtz Conexión con bases de datos 21 21-08-2012 00:48:46
delphi 2010 imagenes png¿como usarlas? JXJ Varios 2 13-09-2010 21:40:49
Hacer que Delphi 2010 luzca como Delphi 7 jorosmtz La Taberna 0 11-04-2010 22:45:36
¿cómo hacer un reporte con ravereport de delphi 2010 o un manual ? Master23 Impresión 1 06-04-2010 16:43:20
Iniciar un Loader REHome .NET 5 24-12-2008 10:24:29


La franja horaria es GMT +2. Ahora son las 00:05:10.


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