Search for multicast events. There are a few implementations out there, e.g.
- http://www.deltics.co.nz/blog/?p=137
- http://blogs.embarcadero.com/abauer/2008/09/03/38867
- http://www.codebot.org/delphi/?doc=9568
Some of them need generics, so are D>2009 only.