Ver Mensaje Individual
  #1  
Antiguo 29-11-2006
DISIMULA DISIMULA is offline
Registrado
 
Registrado: mar 2005
Posts: 6
Reputación: 0
DISIMULA Va por buen camino
Red face Error al usar una dll que he creado

Bueno para empezar indicar que es la primera dll que creo para uso propio y por ser la primera pues empiezan los problemas.

indico la funcion que me da problemas de la dll es la siguiente.

Código Delphi [-]
Procedure ConectarAdo(ADOConnection1: TADOConnection; Nombre: String); stdcall; export;
Begin
  ADOConnection1.Connected:=False;
  ADOConnection1.ConnectionString:=
  'Provider=Microsoft.Jet.OLEDB.4.0;'+
  'Data Source='+ExtractFilePath(Application.ExeName)+Nombre+
  ';Persist Security Info=False';
  Try ADOConnection1.Connected:=True
  Except
  Begin
     Showmessage('No ha sido posible realizar la conexion');
  end;
  end;
end;

exports ConectarAdo


Ahora el codigo de llamada que uso en el ejemplo uso un form con un TADOConecction y la siguiente llamada:

Código Delphi [-]
var
  Form1: TForm1;
  Procedure ConectarAdo(ADOConnection1: TADOConnection; Nombre:    String); external 'info.dll';

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
  ConectarAdo(AdoC,'Ejemplo.mdb');
end;


Pues cuando pruebo me da una excepcion EAccessViolation in module info.dll at 001484FA

Alguien puede ayudarme seguro que es una tonteria pero es que no estoy muy puesto,

Gracias por todo.
Responder Con Cita