FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour ActiveX ctrl de eventos y manejo de parametros
Posts: 682
Joined: Tue Feb 14, 2006 09:48 AM
ActiveX ctrl de eventos y manejo de parametros
Posted: Wed Nov 05, 2008 12:13 PM
Tengo un ActiveX, del cual controlo sus eventos. Uno de dichos eventos, pasa tres parametros.
El primero es un numero, y los dos siguientes son un objeto (OLE).

Como puedo manejar dichos objetos, al revisar el array de parametros, me devuelve un numerico, puedo intuir que sea una direcci贸n de memoria.

De la doc. del activeX

HRESULT OnEnroll(
[in] LONG 1Mask,
[in] IDispatch* pTemplate,
[in] IDispatch* pStatus
);

Mask [in] Variable of type long that contains the index value
Template [in] A DPFPTemplate object
pStatus [in] A DPFPEventHandlerStatus object

Actualmente me devuelve lo siguiente
aParams[1]-->2
aParams[2]-->53158252 //Esto debiera ser Objeto Template??
aParams[3]-->18948684 //Esto debiera ser Objeto Status
Saludos desde Mallorca
Biel Maim贸
http://bielsys.blogspot.com/
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
ActiveX ctrl de eventos y manejo de parametros
Posted: Wed Nov 05, 2008 01:38 PM
Biel,

>
aParams[2]-->53158252 //Esto debiera ser Objeto Template??
aParams[3]-->18948684 //Esto debiera ser Objeto Status
>

Si, posiblemente. Para poder usarlos, haz esto:
   local o := CreateObject( "Shell.Explorer" )
   local hOldObj := o:hObj
   local uRet 

   o:hObj = aParams[2]
   // a partir de aqui, lo puedes usar como un objeto OleAuto 
   ... 
   o:hObj = hOldObj 
   o = nil
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 682
Joined: Tue Feb 14, 2006 09:48 AM
ActiveX ctrl de eventos y manejo de parametros
Posted: Wed Nov 05, 2008 04:35 PM
Gracias Antonio,
supongo que con lo que me indicas debe de funcionar.
El objeto parece que queda bien definido, el problema que tengo ahora, es particular de este objeto OleAuto, y es que puedo acceder a los datas, pero no me reconoce ningun metodo.
En VB, lo he probado y si funciona ok, tanto metodos como datas. Alguna idea de lo que le pueda pasar.
Alguna manera para ver los metodos disponibles de un control OleAuto?

Error description: Error DPFPShrX.DPFPTemplate/3 DISP_E_MEMBERNOTFOUND: DESERIALIZE
Args:

Stack Calls
===========
Called from: source\rtl\win32ole.prg => TOLEAUTO:DESERIALIZE(0)


PD Este comportamiento es independiente al hecho de cambiar hObj, si no lo cambio, tampoco me funciona.
Saludos desde Mallorca
Biel Maim贸
http://bielsys.blogspot.com/
Posts: 270
Joined: Fri Nov 11, 2005 07:39 PM
ActiveX ctrl de eventos y manejo de parametros
Posted: Wed Nov 05, 2008 05:39 PM

Hola Biel:

Te envie a tu privado, algo que te va a servir !!

Saludos,

Juan

Juan
==> Pasando a FWH16.04 + Harbour32 + BCC70 + PellesC
=> Abandonando FWH 13.7 + xHarbour + BCC582
http://www.mitaller.cl
Posts: 682
Joined: Tue Feb 14, 2006 09:48 AM
ActiveX ctrl de eventos y manejo de parametros
Posted: Wed Nov 05, 2008 08:47 PM

Gracias Juan,
lo que realmente me interesaria es poder comprobar las existencias de los metdos desde dentro de Harbour.

Los nombres de los metodos, los tengo en la documetaci贸n y ademas tambien los he comprobado con Oleview, el caso es que desde Harbour me retorna error, y por ejemplo desde VB funciona correctamente. Es un comportamiento algo estra帽o, hasta la fecha, siempre me habia funcionado sin problema la mayoria de controles Ole.

Si alguien puede darme una pista, sera bienvenida.

Saludos desde Mallorca
Biel Maim贸
http://bielsys.blogspot.com/

Continue the discussion