Mike,
With AddObject() the object should destruct when the container class it was added to destructs. With CreateObject() the object will destruct whenever the memvar the object reference was assigned to goes out of scope.
Personally I explicitly .null. out CreateObject objects when I'm done with them, just mostly as a "code cleanliness" design issue.
>This doesn't pertain to just COM objects, but if I use CreateObject or AddObject in my Main prg, do I need to remove all objects after the read events or does the termination of the EXE automatically remove all objects?