On Wed, 26 May 2004 12:58:19 +0000, fenix wrote:
Well Soft References are used in many places in COM (for example D3D textures/surfaces use it on windows)
OK :) I have not seen this technique before, but then I've never implemented lots of COM objects all working together.
I can't have a backtrace as i can't get winedbg working correctly on installshield programs :( But i'll send you the traces later (when i'll be back home).
What does winedbg do/not do? I've been able to use it with InstallShield before: you may have to attach to it after the program has started though.
For what i have see it's a problem of ITypeInfo::Invoke when it should returns a Pointer to an IUnknown Variant. InstallShield complains about Objects References not set !!
Yes, this problem has plagued us for ages. It seems to be a race condition of some sort, Marcus has debugged this extensively.
By "should return a pointer to an IUnknown variant" do you mean that pVarResult should hold a VT_UNKNOWN variant? Do you know what function/property it's trying to use?
Yes, but as the code of ITypeLib2/ITypeInfo don't seems thread safe at all ... (anyway i'll fix it) :)
Yeah I know :) It just seems that we might as well write new code to be thread safe so when somebody comes to make it thread safe they have less work to do ...
No, i have only to no have a lot of debug traces (i have added on my tree) on Variant* Operations when clearing already empty Variants
OK, that makes sense.
thanks -mike