firing the event from another unadvised one.
On Oct 2, 12:41 pm, "Igor Tandetnik" <itandet...@mvps.org> wrote:
"ferg" <fergd...@gmail.com> wrote in message
news:1191321751.087331.321080@57g2000hsv.googlegroups.com
I can see that the QueryInterface is successful and the m_vec.Add(p)
call successfully adds the interface to the vector map. Nothing else
seems to happen until I make the test call into the server, which
calls the event Fire_ method. At this point the m_vec map is empty and
contains no interface pointers!
Do you implement just one connection point? It sounds like the client
advises to one, but you try firing on another. Each connection point has
its own list of sinks in its copy of m_vec.
BTW Alexander:
I assume you are referring to the following, which does seem to be
correctly in the connection map.
BEGIN_CONNECTION_POINT_MAP(CCoMessageEventTest)
...
What's behind this ellipsis?
CONNECTION_POINT_ENTRY(__uuidof(DThirdPartyEvents))
END_CONNECTION_POINT_MAP()
--
With best wishes,
Igor Tandetnik
With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going to
land, and it could be dangerous sitting under them as they fly
overhead. -- RFC 1925
Sorry - probably caused undue confusion there. I created another test
app this morning, just implementing a minimal set of interfaces. When
creating the test COM server, I selected "Support Connection Points"
in the wizard (I hadn't previously.) The other member of the map is
the Connection Point added by the wizard - note this is not present in
the full version I've been testing. Neither one is firing events.
BEGIN_CONNECTION_POINT_MAP(CCoMessageEventTest)
CONNECTION_POINT_ENTRY(__uuidof(_IMessageEventTestEvents))
CONNECTION_POINT_ENTRY(__uuidof(DThirdPartyEvents))
END_CONNECTION_POINT_MAP()
The other connection point map just looks like this:
BEGIN_CONNECTION_POINT_MAP(CCoMyThirdPartyEvents)
CONNECTION_POINT_ENTRY(__uuidof(DThirdPartyEvents))
END_CONNECTION_POINT_MAP()
Regards,
Fergus