Hi Antonio,
Sorry no idea. The only bug I see is hb_parnl() usage
while it should be hb_parnint(), but that only affects
x64 systems.
I hope someone will comment who knows OLE better from
the inside.
Brgds,
Viktor
On 2009.08.19., at 4:46, Antonio Linares wrote:
Viktor,
In FWH Class TActiveX we use this code (which was working fine with
previous OleAuto version):
::oOleAuto = TOleAuto():New( ActXPdisp( ::hActiveX ) )
ActXPdisp() returns a pDisp.
So we tried this change in legacy.prg:
IF ISNUMBER( xOle )
xOle := __OLEPDISP( xOle )
ENDIF
__OLEPDISP() uses the same code as __OleCreateObject() at the end:
HB_FUNC( __OLEPDISP )
{
IDispatch* pDisp = ( IDispatch * ) hb_parnl( 1 );
IDispatch** ppDisp;
ppDisp = ( IDispatch** ) hb_gcAlloc( sizeof( IDispatch* ),
hb_ole_destructor );
*ppDisp = pDisp;
hb_retptrGC( ppDisp );
}
That seemed enough to get it working, but hb_oleParam( -1 ) still
issues an error.
So something is still missing in our test. Hope this helps,
Antonio
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour