>Is that mean when a COM use the ADDOBJECT it hides the new created object. Why would they(microsoft) do that?
It's not that it hides it. For VFP (or any other IDispatch COM client) to see a member of a COM object, it has to be defined in its TypeLib, which is created at compile-time. Since your object does not exist at compiled time, It is not included in the Typelib. Adding a property to the top-level object and using that property to reference the created object will work just fine.
Erik Moore
Clientelligence