Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Bibliotecas de Tipos. (https://www.clubdelphi.com/foros/showthread.php?t=14932)

jplj 05-10-2004 12:17:07

Bibliotecas de Tipos.
 
Estoy trabajando con unos componentes ActiveX.

En la documentación sobre una de las interfaces que implementa puedo leer los siguiente:
Cita:

Método IProp::SetObjects
Establece un vector de objetos cuyas páginas de propiedades se incluirán en el control.
HRESULT SetObjects( int numObj, IUnknown** ppObj );
Argumentos
numObj [in] Número de objetos que se le pasan en el vector.
ppObj [in] Vector de objetos cuyas páginas de propiedades se incluirán en el control
La definición de dicha interfaz es:

Cita:

// *********************************************************************//
// Interface: IProp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {06BA9E01-F3FB-11D2-AF9E-00105AB2E59A}
// *********************************************************************//
IProp = interface(IDispatch)
['{06BA9E01-F3FB-11D2-AF9E-00105AB2E59A}']

...
procedure SetObjects(num: SYSINT; var ppUnk: IUnknown); safecall;
...

Al abrir la biblioteca de tipos con delphi 7 (view / Type Library ), al ver los parámetros que recibe el método en cuestión veo:

Cita:

Name Type Modifier
num int [in]
ppUnk IUnknown** [in]
El problema me surge al intentar pasar al método el vector de objetos (ppObj - ppUnk).
No sé cómo hacerlo.
¿Qué significa los dos astericos que aparencen junto a IUnknown cuando se define el tipo de ppUnk?
A la hora de pasar un solo elemento no tengo problemas, basta con moldear el objeto que deseo pasar a la interfaz IUnknown y pasar como numObj el valor 1, y funciona correctamente.

Saludos
Juan P.


La franja horaria es GMT +2. Ahora son las 20:46:54.

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