Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-01-2006
Delphiboy Delphiboy is offline
Miembro
 
Registrado: mar 2005
Posts: 35
Poder: 0
Delphiboy Va por buen camino
Como leer el valor de una propiedad en una DLL ?

Hola foro, tengo una DLL de la que llamo a una de sus funciones (metodos), le paso parametros y la ejecuto, despues necesito saber si no hubo error a travez de una propiedad, mi duda es como hago para leer el valor de esa propiedad ?, ya que delphi me sigue pidiendo parametros en:
if mPaso1.NoError

tengo el siguiente codigo:

implementation

{$R *.DFM}

function mPaso1(valor1, valor2, valor3, valor4 :String):String; stdcall;external 'MiDll.dll';


procedure TForm1.btnGeneraClick(Sender: TObject);
begin
mPaso1('4','200','20','852240');

if mPaso1.NoError = '0' then //si no existe error

Label2.Caption := mPaso1.Autorizacion;
else
showmessage('Error: '+ mPaso1.NoError + mPaso1.DescError);

end;


de antemano gracias....
Responder Con Cita
  #2  
Antiguo 27-01-2006
brandolin brandolin is offline
Miembro
 
Registrado: jul 2003
Ubicación: Mendoza
Posts: 324
Poder: 21
brandolin Va por buen camino
Con las DLL no podes tener acceso a las propiedades salvo que las misma esten definidas y exportadas por la DLL.

Es decir que si queres que acceder an NoError deberia existir en la DLL una funcion que haga:

Código Delphi [-]
function DLLNoError : Integer;
begin
       DLLNoError :=  NoError;
end;

y para llamarlo desde tu codigo delphi deberias hacer:

Código Delphi [-]
procedure TForm1.btnGeneraClick(Sender: TObject);
begin
mPaso1('4','200','20','852240');

if DLLNoError = '0' then //si no existe error

Label2.Caption := DLLAutorizacion;
else
showmessage('Error: '+ DLLNoError + DLLDescError);

end;

donde las DLLNoError, DLLDescError, etc son funciones exportadas por la Dll.
Responder Con Cita
  #3  
Antiguo 27-01-2006
Delphiboy Delphiboy is offline
Miembro
 
Registrado: mar 2005
Posts: 35
Poder: 0
Delphiboy Va por buen camino
Gracias Brandolin por tu respuesta, el siguiente es un ejemplo de como se llama a la funcion y como se lee el valor de la propiedad LNoError, esta escrito en Visual Basic. Yo necesito hacer lo mismo pero en Delphi 5.

Option Explicit

Public vg_Obj As Object

Private Sub Form_Load()
Set vg_Obj = CreateObject("MiDll.clsGeneral")
End Sub

Private Sub cmdGenera_Click()
On Error GoTo MsgError

vg_Obj.LimpiaPropiedades

vg_Obj.Tienda = Me.TextTienda.Text
vg_Obj.Importe = Me.TextImporte.Text
vg_Obj.Dia = Me.TextDia.Text
vg_Obj.Ticket = Me.TextTicket.Text

vg_Obj.mPaso1
if vg_Obj.LNoError = “0” then
msgbox “Autorización = ” & vg_Obj.Autorizacion
…CONTINUA PROCESO…
else
msgbox "NoError = " & vg_Obj.LNoError & vbCrLf & _
"DescError = " & vg_Obj.pDescError
end if
Exit Sub
MsgError:
MsgBox Err.Number & " " & Err.Description, vbCritical
End Sub


saludos, gracias.

Responder Con Cita
Respuesta



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 se usan las dll en otro Proyecto Michel OOP 11 19-01-2008 18:48:04
Como importar funciones de una DLL en C# edgusano .NET 4 30-10-2006 08:57:47
Como leer de un fichero txt y comprobar ??? chelejuan Varios 2 19-04-2005 18:43:47
Como Crear DLL pruz Varios 1 20-10-2003 22:09:46
Componentes Visuales, como propiedad de otro Componente ingacg OOP 5 01-07-2003 23:10:39


La franja horaria es GMT +2. Ahora son las 08:16:17.


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
Copyright 1996-2007 Club Delphi