Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Uso de interfaces (https://www.clubdelphi.com/foros/showthread.php?t=92188)

cmfab 21-08-2017 15:36:25

Uso de interfaces
 
Hola a todos. Quisiera hacer una consulta.

He importado una DLL como un objeto COM a través de la opción de Impor Component de Delphi. hasta acá todo bien, se me genera el archivo .pas con una serie de clases y plantillas de interfaces. El problemas es que algunas las puedo usar y otras no dentro del mismo archivo generado, por ejemplo esta Interface:

Código Delphi [-]
 IAcceptor_API = interface(IDispatch)
    ['{4922B689-4FB6-42E2-A8B8-09F07AC00E90}']
    function Get_CapAdvBookmark: WordBool; safecall;
    function Get_CapApplicationID: WordBool; safecall;
    function Get_CapApplicationPN: WordBool; safecall;
    function Get_CapAssetNumber: WordBool; safecall;

puedo acceder a ella sin problemas, creando la clase de la siguiente manera:

Código Delphi [-]
CreateComObject(CLASS_Acceptor) as IAcceptor_API;

Si embargo, otra interface como esta:

Código Delphi [-]
 IAcceptorEvents = dispinterface
    ['{96CD7E9C-E83A-4C52-AA32-6834CAA33018}']
    procedure OnCalibrateFinish(sender: OleVariant; const e: _EventArgs); dispid 1;
    procedure OnCalibrateProgress(sender: OleVariant; const e: _EventArgs); dispid 2;

no puedo acceder a ella, no se si es por el tipo "dispinterface", o que está pasando que me dice que la clase no está registrada, sin embargo todas las clases e interfaces están en el mismo archivo generado durante la importación del componente, están en el registro de Windows. he revisado en la web y la segunda interface he tratado de usarla mediante este código:

Código Delphi [-]
Disp := CreateComObject(IAcceptorEvents) as IDispatch;
Dispint := IAcceptorEvents(Disp);

De igual forma me da Clase no registrada.

Alguna idea de que puede estar pasando ?. Gracias de antemano por sus atenciones


La franja horaria es GMT +2. Ahora son las 21:57:43.

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