Class CAsyncSocket::
SocketMessageHandler()
Base ClassesData ItemsConstructorsDestructorsFunctionsCustom CodeGo to hierarchy chart    Prev page: ShutdownNext page: Custom Code in Header Before Includes    Show member index
Private Function Declared in:
AsyncSocket.h

'Declaration' icon -- Shortcut to top of page. Declaration

static LRESULT CALLBACK SocketMessageHandler(
    HWND hwnd,                          // handle to window
    UINT uMsg,                          // message identifier
    WPARAM wParam,                      // first message parameter
    LPARAM lParam);

'Description' icon -- Shortcut to top of page. Description

Our window proc

'Function Body' icon -- Shortcut to top of page. Function Body

if (m_bShuttingDown)
    return TRUE;

try
{
    //first get the socket
    CAsyncSocket* cSock;

    cSock=GetSocketByID((int)wParam);

    if (cSock)
        //Socket exists
        switch (uMsg)
        {
        case WM_SOCKET_GENERAL:
            if (WSAGETSELECTEVENT(lParam) == FD_READ)
                return cSock->OnSocketReceive(WSAGETSELECTERROR(lParam));
            else if (WSAGETSELECTEVENT(lParam) == FD_WRITE)
                return cSock->OnSocketWrite(WSAGETSELECTERROR(lParam));
            else if (WSAGETSELECTEVENT(lParam) == FD_OOB)
                return cSock->OnSocketOOB(WSAGETSELECTERROR(lParam));
            else if (WSAGETSELECTEVENT(lParam) == FD_CLOSE)
                return cSock->OnSocketClose(WSAGETSELECTERROR(lParam));
            break;
        case WM_SOCKET_CONNECT:
            if (WSAGETSELECTEVENT(lParam) == FD_CONNECT)
                return cSock->OnSocketConnect(WSAGETSELECTERROR(lParam));
            break;
        case WM_SOCKET_ACCEPT:
            if (WSAGETSELECTEVENT(lParam) == FD_ACCEPT)
                return cSock->OnSocketAccept(WSAGETSELECTERROR(lParam));
            break;
        case WM_TIMER:
            //Inform the socket
            return cSock->OnSocketTimeout();
        default:                       /* Passes it on if unproccessed    */
            return (int)(DefWindowProc(hwnd, uMsg, wParam, lParam));
        }
    else
        return (int)(DefWindowProc(hwnd, uMsg, wParam, lParam));

    return TRUE;
}
ERROR_HANDLER_STATIC_RETURN(CAsyncSocket_Class,"SocketMessageHandler",TRUE)

'See Also' icon -- Shortcut to top of page. See Also

Class Overview Class Overview  |  Protected base class CSpoofBase  |  Hierarchy Chart Hierarchy Chart


Get Surveyor!This web site was generated using Surveyor V4.50.811.1.  Click here for more information. Site content copyright © 2001 Barak Weichselbaum. See the About page for additional notices. This page last updated: 24 Apr 2001.