Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-07-2011
mcsebas mcsebas is offline
Miembro
 
Registrado: feb 2008
Posts: 78
Poder: 17
mcsebas Va por buen camino
Problemas error E2291

Hola estimada gente resulta que estoy teniendo el siguiente problema:
Estoy haciendo una aplicacion y utilzo interfaces (interface) y la implemento en una clase, hasta ahi todo bien pero cuando la compilo me tira el error E2291 con el siguiente mensaje:


[DCC Error] cOficina.pas(10): E2291 Missing implementation of interface method IInterface.QueryInterface
[DCC Error] cOficina.pas(10): E2291 Missing implementation of interface method IInterface._AddRef
[DCC Error] cOficina.pas(10): E2291 Missing implementation of interface method IInterface._Release


¿Que significa esto antes en Delphi 7 trabajaba perfectamente con esto pero ahora en Delphi XE no funciona?

por las dudas la interface es esta

Código Delphi [-]
type
    IImplementacionABM=interface
        ['{3EC87CE6-D24B-4490-9A0A-13E1C9D4BDCB}']
        function Alta:Boolean;
        function Modificar:Boolean;
        function Eliminar:Boolean;
    end;

y la clase en donde la implemento es

Código Delphi [-]
TOficina=class(TRegistro, IImplementacionABM)
       public
          function Alta:Boolean;
          function Modificar:Boolean;
          function Eliminar:Boolean;
    end;

Desde ya gracias por la atencion.
Responder Con Cita
  #2  
Antiguo 19-07-2011
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.234
Poder: 20
ElKurgan Va camino a la fama
El maestro Marteens, en su cara oculta de Delphi 6, dice en la página 39:

"... Como todos los tipos de interfaz descienden directa o indirectamente de IInterface, todos ellos incluyen también los tres métodos básicos QueryInterface, _AddRef y _Release. Eso también significa que cualquier clase que pretenda implementar al menos una interfaz debe proporcionar una implementación para dichos métodos. Delphi nos ayuda mediante la clase predefinida TInterfacedObject[/size], que contiene una implementa-ción estándar de QueryInterface, _AddRef y _Release.

No se si esto puede resolverte el problema.
Saludos.
Responder Con Cita
  #3  
Antiguo 31-07-2011
mcsebas mcsebas is offline
Miembro
 
Registrado: feb 2008
Posts: 78
Poder: 17
mcsebas Va por buen camino
Me podrian explicar como implementar con el objeto TInterfacedObject.

Gracias
Responder Con Cita
  #4  
Antiguo 01-08-2011
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.234
Poder: 20
ElKurgan Va camino a la fama
Pues asi:

Código Delphi [-]
Type
  MiClaseInterfaz = class(TInterfacedObject, IInterfazque sea)
  ...
end;
El el libro de Marteens vienen muy bien explicado en los primeros capitulos

Un saludo
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
Problemas con Excel 97 y Delphi, error un poco raro JoAnCa Servers 2 09-10-2008 22:38:24
Error 1005, problemas creando una tabla. D-MO MySQL 3 13-03-2008 20:45:24
problemas con sentencia..error token unknown BlueSteel Firebird e Interbase 5 11-07-2007 20:36:57
Problemas con los mensajes de error del IDE urush30 Varios 2 03-01-2007 16:54:13
Problemas con error en bases de datos en delphi5 vick Conexión con bases de datos 4 23-10-2005 00:02:20


La franja horaria es GMT +2. Ahora son las 14:17:12.


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