Page 2 of 2
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 8:53 pm
by TimStone
Antonio,
Still there. Its puzzling ! This had been rock solid for the past few years with xHarbour and suddenly I'm running into a problem ....
Tim
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 8:56 pm
by lucasdebeltran
Timm,
Why don´t you please build a self-contained example?. That´s the way Antonio can reproduce the problem.
Best regards
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 9:13 pm
by Antonio Linares
Tim,
I have searched in all Harbour libraries for the error that you described:
The exact error is: Destructors Disabled : Destructor of class 'TOLEAUTO' can't be executed
and it does not exist inside the Harbour libs neither in all Harbour sources.
But it exists in xHarbour libs. So I think you are using the wrong Harbour libraries to build your EXE
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 9:51 pm
by TimStone
Antonio,
This is occurring with my xHarbour build ...
I'm looking at another possibility right now ...
Tim
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 9:57 pm
by TimStone
OK ...
In May of last year you gave me a file to include in my xHarbour.com builds. It was FIVEACTX.prg
Here is its content:
Code: Select all | Expand
function OleInvoke( hObj, cMethod, uParam )
#ifndef __XHARBOUR__
return __ObjSendMsg( TOleAuto():New( hObj ), cMethod, uParam )
#else
local aParams := hb_aParams()
aParams[ 1 ] = TOleAuto():New( hObj )
return hb_execFromArray( @__ObjSendMsg(), aParams )
#endif
return NIL
function OleSetProperty( hObj, cPropName, uValue )
return __ObjSendMsg( TOleAuto():New( hObj ), "_" + cPropName, uValue )
function OleGetProperty( hObj, cPropName )
return __ObjSendMsg( TOleAuto():New( hObj ), cPropName )
Could this be related ?
Tim
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 10:04 pm
by Antonio Linares
Tim,
Are you using QUIT in any place in your app ?
If so, please remove it
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 10:09 pm
by Antonio Linares
Tim,
Please modify my code this way:
Code: Select all | Expand
function OleInvoke( hObj, cMethod, uParam )
#ifndef __XHARBOUR__
return __ObjSendMsg( TOleAuto():New( hObj ), cMethod, uParam )
#else
local aParams := hb_aParams()
local u
aParams[ 1 ] = TOleAuto():New( hObj )
u = hb_execFromArray( @__ObjSendMsg(), aParams )
aParams[ 1 ] = nil
return u
#endif
return NIL
function OleSetProperty( hObj, cPropName, uValue )
local o := TOleAuto():New( hObj )
local u := __ObjSendMsg( o, "_" + cPropName, uValue )
o = nil
return u
function OleGetProperty( hObj, cPropName )
local o := TOleAuto():New( hObj )
local u := __ObjSendMsg( o, cPropName )
o = nil
return u
Re: Exit Error : 13.04 OLE
Posted: Fri May 17, 2013 10:47 pm
by TimStone
Antonio,
I've done all of that and I've gone through and removed several programs and a couple of libraries. All of this has so far been unsuccessful.
I'm now going to build a standalone program. I actually have one but it has some issues so I need to update it. This way I can see if perhaps I have another library that I'm using which may be contributing to the problem.
I'll post the results tomorrow after I have it running.
Thanks for all the suggestions. I would really love to just use the MSVC version but there are still issues I have to check and resolve.
Tim
Re: Exit Error : 13.04 OLE
Posted: Sat May 18, 2013 5:21 pm
by Richard Chidiak
Tim
I am puzzled why you need to use all these functions for OLE
I do not use any of these and the last problem got fixed today by including
function hb_gcall()
return nil
to release properly the ole objects used, in the method endplan you should add :
::oCalexStdDlgs := nil
::oGlbSettings := nil
Hth
Richard
Re: Exit Error : 13.04 OLE
Posted: Sat May 18, 2013 6:18 pm
by Antonio Linares
Richard,
The above function was just to confirm where the GPF comes from. It is crashing on hb_gcAll() and that is weird as hb_gcAll() invokes the garbage collector. In other words: it is not crashing as we have located where it crashes but we have not fixed it yet.
And what is very strange, hb_gcAll() has conflict (somehow) with GdiPlus:
0x746C0000 0x00190000 C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7600.16385_none_72fc7cbf861225ca\GdiPlus.dll
Called from HB_GCALL(0)
Called from TDIALOG:END(513) in .\source\classes\DIALOG.PRG
Re: Exit Error : 13.04 OLE
Posted: Sat May 18, 2013 6:24 pm
by Antonio Linares
And the problem ocurrs when the CodeJock ActiveX is used. Still not know why it happens, and again I repeat the same: we don't have the source code for the ActiveX so when errors like this happen, it is not easy to fix it. We just can modify our code until it does not fail.
Re: Exit Error : 13.04 OLE
Posted: Sun May 19, 2013 9:05 am
by Antonio Linares
Thinking about it, we could build Harbour with HB_FM_STD_ALLOC and see if that makes a difference. It did it on WinRT.