我正在做套接字编程。它非常新。等到事件发生时
该应用程序是一个Windows服务,在其ServiceMain()
函数中我调用了CAsyncSocket::Listen()
方法来侦听客户端连接。但是在开始监听连接之后,它将返回并且ServiceMain()
函数将返回并且服务停止。
我想要做的是,等到一个特定的事件发生说WM_QUIT
,直到比听连接。怎么做?
// static member function (callback)
void CNTService::ServiceMain(DWORD dwArgc, LPTSTR* lpszArgv)
{
// m_Server containts two sockets
// one for listening and one for accepting connections
m_Server.StartListening(); // calls Listen method on the listener socket
// it will return and service will quit
// which I don't want
}
我可以接受混合Win32和MFC,所以如果能在Win32中做请不要告诉我太:)
你能告诉我究竟如何等待客户端连接到服务器? 这项工作? m_Listener.Listen(); WaitForSingleObject(m_Listener); – akif 2009-08-11 05:49:50