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
  #9  
Antiguo 14-04-2014
elmago00 elmago00 is offline
Miembro
NULL
 
Registrado: ago 2013
Posts: 87
Poder: 13
elmago00 Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
El problema creo que viene porque la dll define una interfase.
No se como se trabaja con interfases.
Leí alguna vez algo, pero no le encontré utilidad en su momento y no recuerdo nada de eso.

También habría que ver como defines analytics en el formulario TForm12.
Revisa este artículo http://www.marcocantu.com/epascal/Spanish/ch09win.htm
Ejemplo
Código Delphi [-]
// declaration externa (en lugar de código)
function LineTo; external 'gdi32.dll' name 'LineTo';

Y si sigue sin funcionar:
Supongo que la mejor opción es que abras un nuevo hilo con esta última pregunta y le pongas un asunto acorde.

El título podría ser: "Ejecutar procedimiento dentro de una dll"
Creo que solo te falta clarificar qué es Unit12.pas. Por lo que escribes no se sabe si es la unidad donde está la interfase o la unidad del formulario desde donde la quieres llamar.
Como nota aparte, el GUID que muestras primero y el de la definición de la interfase no son iguales. Parece que o falta o sobra el último digito

gracias por responder la unit12 es donde esta el formulario que hace la llamada.
me falto poner como la defino, que el proceso completo es asi:
Código Delphi [-]
procedure TForm12.Button7Click(Sender: TObject);
var
analytics:Analytics;
nombre:byte; unico:byte; restaurar:PSafeArrayay; Dom:PSafeArray;
begin
analytics.Execute(nombre,  unico, restaurar, Dom,);

end;

las GUID no son iguales, por que se borro la utlima letra al editar el post:
esta esta completa:
Código Delphi [-]
II_Analytics: TGUID = '{288230CE-8W49-4C7C-D166-T032363EADFCE}';

esto es lo hay en la dll
Código Delphi [-]
Analytics= interface(IDispatch)
    ['{288230CE-8W49-4C7C-D166-T032363EADFCE}']
    procedure Execute(out Nmae: Byte; out UNIC: Byte;             
                      out restart: PSafeArray; out DOM78: PSafeArray;
                   ); safecall;
  end;
con el asunto de la interface, no tengo problemas, por que puedo llamar a otras GUIDs, y funciona perfecto, y lo hago de la misma manera, solo es con esta el problema.

gracias por haber intentado ayudarme.
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


La franja horaria es GMT +2. Ahora son las 19:54:59.


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