1. I meant you could run your code at the same privilege level as the kernel, and use kernel functions as well as accessing kernel objects directly. Then you usually have no problems with doing whatever you wish to any processes, etc.
2. As you might have noticed, I've been talking about a bit more low-level programming than COM programming. After all, you can always tell the OS a certain range of memory is to be freed.
Then, well, speaking in terms of COM programming, such memory leaks do really look lame. But what makes you think the developers are so unexperienced? And why do you think they would use COM model?