Miguel,

> OleInitialize() can be called several times with his pair 
> OleUninitialize()
> One for each tOleAuto.
>
> It may be called previous of destroy TOleAuto.
>
> If it is called only 1 time as actual xharbour is imperative to call
> OleUninitialize previous to call  hb_clsReleaseAll(), Because 
> OleUninitialize
> can cause the creation of messages to the control container, which can no 
> longer access your variables causing a GPF.
>
> Remember that some activeX are can't be destroyed, and its instance 
> persists meanwhile windows is executed, it only need
> to be unlinked of its parent control, Because it uses always the same 
> instance. For this types of ActiveX we need to
> translate OleUninitialize to TOLEAUTO.
>
> Such as ActiveX RMCHARTX and others with certain levels of protection to 
> be implemented over n times (for example).
>
> So, the decision should be put where its developer OleInitialize and 
> OleUninitialize. Or transfer these to the class tOleOuto

It's possible there is another solution. Please, trace your OCX container to 
see if it tries to call any object method or property at the end, when the 
vm is closed. If so, then you may protect your container by testing ( 
hb_vmRequestQuery() == HB_QUIT_REQUESTED ) to not call to the object.

ITOH, it's possible that Ron is right, and the problem is that you are not 
relasing correctly the OCX. I've not had any problem with RMChartX


Regards,

Jose F. Gimenez 


-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
xHarbour-developers mailing list
xHarbour-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xharbour-developers

Reply via email to