Hi Friends,
__________________________________________________ ___________________
Operating System: Windows XP
Language :Vc++ 6.0
__________________________________________________ ___________________
FinalConstruct Finalrelease
(Thread and Event Creation) (Thread and event handle Closed)
(called from client)
ThreadFunction Incoming
Interface Function
Wait for signal from main thread signals the
workerthread
When thread function receives the signal from Incoming Interface Function it
calls the public function of the class (connection point helper).Inside this
it callback to the client. The code for this is given below
|||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||
int nsize=p->m_vec.GetSize();
for(int index=0;index<nsize;index++)
{
CComPtr<IUnknown> pUnk = p->m_vec.GetAt(index);
if(pUnk != NULL)
{
CComQIPtr<IsampleEvent> pIsampleEvent(pUnk);
hr = pIsampleEvent ->Callback (m_pCurrentCassette, m_setBy);
}
}
|||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||||||||||||
************************************************** **********
In the IConnectionPointImpl<CSampleConPt,&IID_IOutConPt,
CComDynamicUnkArray_GIT> this class is added for GIT .so whenever the client
calls the advise marshaled interface pointer will be added to the
vector(GIT). This is the interface pointer getting from the vector.
here when the interface pointer calls the callback function of client it
fails with catastrophic error.
************************************************** **********
what could be the case ?
Thanks in advance,
David