Thanks a lot.
Finally I was able to make the Connection Manager with proper design.
"nexolite" <nexolite@discussions.microsoft.com> wrote in message
news:79CABD9D-617E-44B3-93EE-BE108D45A0C4@microsoft.com...
This is in reference to following post:
http://groups.google.co.in/group/microsoft.public.vc.mfc/browse_thread/thread/26d525c01a51ca3/cbc7666feab318ed?lnk=gst&q=nexolite#cbc7666feab318ed
here I wanted to implement the SendMessage() to dialog class method as
suggested by joe.
here is what his post was:
*************
void ConnectionManager::OnAccept(int nErrorCode)
{
if(nErrorCode == 0)
{ /* got it! */
ConSock * sock = new ConSock;
if(Accept(*sock))
{ /* got connection */
pwnd->SendMessage(UWM_CONNECTED, (WPARAM)sock);
} /* got connection */
else
... deal with error
} /* got it */
else
... deal with error
}
Note that this does not require ANY knowledge of what the parent class is,
what its type
is, the header file from the parent class, or anything else.
****
But here he is using pwnd (which in my code was CDialog*),
but then if you are using pwnd, then how does it not require any knowledge
of the parent class?
or what is the way to SendMessage to the CDialog window?
The socket class (ConnectionManager) should have a CWnd* pwnd member
variable. It must be initialized when the ConnectionManager object is
created. For example, it could be passed in as a constructor parameter.
Since it is a CWnd* the socket class still does not require any knowledge of
the parent class, except that it is some type of window. (And since
SendMessage can only work with some type of window, this is required
anyway.)
--
Scott McPhillips [VC++ MVP]