Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > CSocketComm

Reply
Thread Tools

CSocketComm

 
 
Carl Forsman
Guest
Posts: n/a
 
      11-19-2008
- I have a class that extends CSocketComm, it is a socket server

- after client send data to server (OnDataReceived function), how can
I send back some data to client? i think i should put the code inside
(OnDataReceived function).

- Currently (OnDataReceived function) only receive data from client
and insert data into a link list - (m_listMessages)

- any example code on response data back to client like -
<resp><picID>2</picID></resp>


========================
class CVirtualScreen
: public CInterfaceGroup
, public CSocketComm
{

========================
bool CVirtualScreen::StartServer() {
bool bSuccess = true;
if (bSuccess == true) {
SetSmartAddressing( false );
bSuccess =
CreateSocket(g_Configuration.m_szServerPort, AF_INET, SOCK_STREAM, 0);
}
if (bSuccess == true) {
SetServerState(true);
SockAddrIn saddr_in;
GetSockName(saddr_in);
ULONG ulIPAddr = saddr_in.GetIPAddr();
LPBYTE pbtIPAddr = (LPBYTE)&ulIPAddr;
}
if (bSuccess == true) {
bSuccess = WatchComm();
}
return bSuccess;
}
========================
void CVirtualScreen::OnDataReceived(const LPBYTE lpBuffer, DWORD
dwCount)
{
for (DWORD i = 0; i < dwCount; i++) {
m_bReceiveBuffer[m_nReceiveIndex] = lpBuffer[i];
m_nReceiveIndex = (m_nReceiveIndex + 1) %
RECEIVE_BUFFER_SIZE;
if (lpBuffer[i] == '\n') {
m_bReceiveBuffer[m_nReceiveIndex] = 0;
EnterCriticalSection(&m_CriticalSection);
m_listMessages.push_back(std::string((const
char*)m_bReceiveBuffer));
LeaveCriticalSection(&m_CriticalSection);
m_nReceiveIndex = 0;
}
}
}
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off




Advertisments