Ну я примерно знаю, что такое COM - это интерфейс, а ля API.
Знаю что они регистрируются в системе под уникальным идентификатором.
Согласно Wiki (
https://en.wikipedia.org/wiki/Component_Object_Model):
Message pumping
When an STA is initialized it creates a hidden window that is used for inter-apartment and inter-process message routing. This window must have its message queue regularly "pumped". This construct is known as a "message pump". On earlier versions of Windows, failure to do so could cause system-wide deadlocks. This problem is complicated by some Windows APIs that initialize COM as part of their implementation, which causes a "leak" of implementation details.
Может от этого играть, ловить сообщения этого скрытого окна...