Click here to Skip to main content
15,889,877 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
AnswerRe: how to define a const multileline string Pin
xiaohe5211-Sep-05 16:23
xiaohe5211-Sep-05 16:23 
AnswerRe: how to define a const multileline string Pin
Jose Lamas Rios1-Sep-05 16:27
Jose Lamas Rios1-Sep-05 16:27 
GeneralRe: how to define a const multileline string Pin
xiaohe5211-Sep-05 16:34
xiaohe5211-Sep-05 16:34 
Questionhelp,can't create windows in constructor and OnCreate Pin
followait1-Sep-05 15:27
followait1-Sep-05 15:27 
AnswerRe: help,can't create windows in constructor and OnCreate Pin
Jose Lamas Rios1-Sep-05 17:07
Jose Lamas Rios1-Sep-05 17:07 
Generallike this Pin
followait1-Sep-05 18:13
followait1-Sep-05 18:13 
GeneralRe: like this Pin
Jose Lamas Rios2-Sep-05 3:06
Jose Lamas Rios2-Sep-05 3:06 
QuestionSolve Error Pin
Member 21610041-Sep-05 14:53
Member 21610041-Sep-05 14:53 
I edit a program that write by my supervisor and it was a server source code.
After I edit, I found out three error. Can anybody solve it?
#include "stdafx.h"

#define DEFAULT_TCPPORT 1000;

typedef struct
{
SOCKET Skt;
SOCKADDR_IN AddrFrom;
int nAddrFromLen;
LPVOID ParamPointer;
}SOCKETDATA;

SOCKET ServerSkt;
SOCKET eServerSkt;

CString ServerStatus="Waiting for Request(s)....";
CString PortStatus="Starting TCP/IP Services.";

long SocketClosedDelay=DEFAULT_DELAY;

UINT ListenThread(LPVOID lParam)
{
HANDLE hThread;
SOCKADDR_IN SktAddr;
char szMessage[300];

ServerSkt = socket ( AF_INET, SOCK_STREAM, 0 );
if ( ServerSkt == INVALID_SOCKET )
{
printf("Error INVALID_SOCKET 1\n");
}

else
{
SktAddr.sin_family=AF_INET;
SktAddr.sin_port=htons(6000);
SktAddr.sin_addr.s_addr=htonl("127.0.0.1");

if ( bind ( ServerSkt, ( LPSOCKADDR ) &SktAddr, sizeof ( SktAddr ) ) == SOCKET_ERROR )
{
printf("Error INVALID_SOCKET 2\n");
}
else
{
if ( listen ( ServerSkt, SOMAXCONN ) == SOCKET_ERROR )
{
printf("Error INVALID_SOCKET 3\n");
}
else
{

return 0;
}
}
}

return 0;
}

UINT AcceptThread ( LPVOID lParam )
{
SOCKADDR_IN AddrFrom;
int nAddrFromLen = sizeof ( AddrFrom );
SOCKETDATA* psktData;

HANDLE hThread;

char szMessage[300];
while (hHeap!=NULL)
{

psktData -> Skt = accept ( ServerSkt, ( LPSOCKADDR ) &AddrFrom, &nAddrFromLen );
if ( psktData -> Skt == INVALID_SOCKET )
{
printf("Error INVALID_SOCKET 4\n");
HeapFree ( hHeap, 0, psktData ); break;
}

psktData -> AddrFrom = AddrFrom;
psktData -> nAddrFromLen = nAddrFromLen;
psktData -> ParamPointer = lParam;
}

return 0;
}
UINT ClientThread ( LPVOID lParam )
{
SOCKETDATA* psktClient = ( SOCKETDATA* ) lParam;
SOCKET MySkt = psktClient -> Skt;
LPVOID ParamPointer = psktClient ->ParamPointer;

SOCKADDR_IN MyAddrFrom = psktClient -> AddrFrom;
int nMyAddrFromLen = psktClient -> nAddrFromLen;

IN_ADDR InFrom;

long nBytesRecv;
long nBytesSent;

char ReceivedData [400];
char ReceivedDataP[400];

char szMessage[300];

char RequestStr [400];
char RespondStr [400];
char RespondStrA[400];

long Count1;
long Count2;

long i=0, j=0;

BOOL DataRequest=FALSE;
BOOL S;
HeapFree ( hHeap, 0, psktClient );

nBytesRecv = recv ( MySkt, ReceivedData, sizeof(ReceivedData), 0 );

if (nBytesRecv==SOCKET_ERROR)
{
printf("Error INVALID_SOCKET 5\n");
closesocket ( MySkt );
}

else
{
DataRequest=TRUE;
ReceivedData[nBytesRecv]=NULL;

for(i; i<nbytesrecv; i++)
="" {
="" if(((receiveddata[i]="" &="" 0xf0)="" ^="" 0x00="" !="0x00)" &&="" ((receiveddata[i]="" 0x10="" (receiveddata[i]="" 0x80="" 0x90=""
="" 0xa0="" 0xb0="" 0xc0="" 0xd0="" 0xe0="" 0xf0="" if(receiveddata[i]!="0x20)
" receiveddatap[j]="ReceivedData[i];
" j++;
="" }
="" }

="" memcpy="" (="" &infrom,="" &myaddrfrom.sin_addr.s_addr,="" 4="" );
="" if(datarequest="=TRUE)
" wsprintf(requeststr,="" "%s;",="" inet_ntoa="" (infrom));
="" strcat="" (requeststr,="" receiveddatap);
="" strcpy(respondstra,="" cachedatapop(receiveddatap));

="" if(strcmp(respondstra,="" "null")!="0)
" cachehit="TRUE;
" if(cachehit="=FALSE)
" waitforsingleobject(requestqempty,="" infinite);

="" s="RequestStringPush(RequestStr);

" releasesemaphore(requestqfull,="" 1,="" &count1);

="" while(s="=FALSE)
" sleep="" (30);

="" &count1);
="" }=""

="" "%s",="" waitforsingleobject(respondqfull,="" infinite);="" strcpy(respondstr,="" respondstringextract(requeststr));

="" releasesemaphore(respondqempty,="" &count2);
="" while(strcmp(respondstr,="" "null")="=0)
" if(debugsession="=TRUE)
" writerespondlog(respondstr);
="" nbytessent="send" (myskt,="" respondstr,="" lstrlen(respondstr),="" 0);

="" if(nbytessent="=SOCKET_ERROR)
" wsprintf(szmessage,="" "send()="" error.="" unable="" to="" send="" respond="" packet="" %s="" -="" data="" discarded.",="" writesyslog(szmessage);

="" serverstatus="szMessage;" ::sendmessage((hwnd)="" parampointer,="" wm_timer,="" (wparam)="" 25,="" (lparam)="" 0);
="" sleep(socketcloseddelay);
="" closesocket="" (myskt);

="" writetocache(receiveddatap,="" respondstr);
="" wsprintf(respondstr,="" strcat(respondstr,="" respondstra);

="" (myskt);
="" return="" 0;
}


uint="" closeconnection(lpvoid="" lparam)
{
="" char="" szmessage[300];

="" if(serverskt="" (serverskt);
="" if(eserverskt="" (eserverskt);
="" "(closeconnection)="" all="" services="" stopped="" and="" connections="" closed.");
="" 0;
}

uint="" exitlistenthread(lpvoid="" lparam)=""
{

="" handle="" hthread;

="" sockaddr_in="" sktaddr;

="" "(exitlistenthread)="" starting="" tcp="" ip="" initialisations.");
="" eserverskt="socket" af_inet,="" sock_stream,="" 0="" );="" if="" invalid_socket="" )
="" socket()="" create="" server="" socket.");
="" writesyslog(szmessage);
="" else
="" sktaddr.sin_family="AF_INET;
" sktaddr.sin_port="htons(6000);
" sktaddr.sin_addr.s_addr="htonl(INADDR_ANY);
" bind="" eserverskt,="" lpsockaddr="" )="" &sktaddr,="" sizeof="" sktaddr="" socket_error="" printf("error="" 7\n");
="" socket="" binding="" completed="" successfully.");
="" listen="" somaxconn="" 8\n");
="" listening="" stage="" hthread="AfxBeginThread" (exitacceptthread,lparam,thread_priority_normal);
="" null="" 4\n");
="" else="" {="" 0;
="" exitacceptthread="" lpvoid="" lparam="" )
{
="" addrfrom;
="" int="" naddrfromlen="sizeof" addrfrom="" socketdata*="" psktdata;
="" "(exitacceptthread)="" begining="" connection="" accepting="" stage.");
="" eheap="GetProcessHeap();

" if(eheap="=NULL)
" getprocessheap()="" request="" for="" system="" heap.");
="" while="" (eheap!="NULL)
" {

="" psktdata="(" heapalloc="" eheap,="" 0,="" socketdata="" );

="" heapalloc()="" allocate="" memory.");
="" break;
=""> Skt = accept ( eServerSkt, ( LPSOCKADDR ) &AddrFrom, &nAddrFromLen );

if ( psktData -> Skt == INVALID_SOCKET )
{
wsprintf(szMessage, "(ExitAcceptThread) - accept() Error. Server Unable to Accept Connection Request.");
WriteSysLog(szMessage);

HeapFree ( eHeap, 0, psktData );
break;
}

psktData -> AddrFrom = AddrFrom;
psktData -> nAddrFromLen = nAddrFromLen;
psktData -> ParamPointer = lParam;

hThread = AfxBeginThread ( ( AFX_THREADPROC ) ExitClientThread, ( LPVOID ) psktData, THREAD_PRIORITY_NORMAL, 0, 0, NULL );

if ( hThread == NULL )
{
wsprintf(szMessage, "(ExitAcceptThread) - AfxBeginThread() Error. Unable to Create ExitClientThread() Thread.");
WriteSysLog(szMessage);

HeapFree ( eHeap, 0, psktData );
closesocket ( psktData -> Skt );
break;
}

}

return 0;
}

UINT ExitClientThread ( LPVOID lParam )
{
SOCKETDATA* psktClient = ( SOCKETDATA* ) lParam;
SOCKET MySkt = psktClient -> Skt;
LPVOID ParamPointer = psktClient ->ParamPointer;

SOCKADDR_IN MyAddrFrom = psktClient -> AddrFrom;
int nMyAddrFromLen = psktClient -> nAddrFromLen;

IN_ADDR InFrom;

long nBytesRecv;

char ReceivedData [500];
char ReceivedDataP[500];

char RequestStr[600];
char szMessage[300];

long i=0, j=0;

BOOL ShutdownRequest=FALSE;
HeapFree ( eHeap, 0, psktClient );

nBytesRecv = recv ( MySkt, ReceivedData, sizeof(ReceivedData), 0 );

Sleep(SocketClosedDelay);

closesocket ( MySkt );


if (nBytesRecv==SOCKET_ERROR)
{
wsprintf(szMessage, "(ExitClientThread) - recv() Error. Server Shutdown Request Ignored.");

WriteSysLog(szMessage);
}

else if (nBytesRecv==0)
{
wsprintf(szMessage, "(ExitClientThread) - recv() - 0 Byte Data Received. Server Shutdown Request Ignored.");

WriteSysLog(szMessage);
}

else if (nBytesRecv<10)
{
wsprintf(szMessage, "(ExitClientThread) - recv() - Corrupted Shutdown Request Packet Received - Discarded. Server Shutdown Request Ignored.");

WriteSysLog(szMessage);
}

else
{
ShutdownRequest=TRUE;
ReceivedData[nBytesRecv]=NULL;

for(i; i
AnswerRe: Solve Error Pin
Christian Graus1-Sep-05 15:10
protectorChristian Graus1-Sep-05 15:10 
GeneralRe: Solve Error Pin
Member 21610041-Sep-05 16:37
Member 21610041-Sep-05 16:37 
GeneralRe: Solve Error Pin
Christian Graus1-Sep-05 16:38
protectorChristian Graus1-Sep-05 16:38 
GeneralRe: Solve Error Pin
Member 21610041-Sep-05 16:58
Member 21610041-Sep-05 16:58 
QuestionList of files in a directory Pin
bugDanny1-Sep-05 9:43
bugDanny1-Sep-05 9:43 
AnswerRe: List of files in a directory Pin
carks1-Sep-05 9:56
carks1-Sep-05 9:56 
GeneralRe: List of files in a directory Pin
bugDanny1-Sep-05 10:00
bugDanny1-Sep-05 10:00 
AnswerRe: List of files in a directory Pin
ThatsAlok1-Sep-05 16:19
ThatsAlok1-Sep-05 16:19 
GeneralRe: List of files in a directory Pin
sunit52-Sep-05 0:56
sunit52-Sep-05 0:56 
QuestionProblem automating IE MSHTML SELECT Element Pin
SureshMahanty1-Sep-05 8:27
SureshMahanty1-Sep-05 8:27 
AnswerRe: Problem automating IE MSHTML SELECT Element Pin
Jose Lamas Rios1-Sep-05 15:46
Jose Lamas Rios1-Sep-05 15:46 
GeneralRe: Problem automating IE MSHTML SELECT Element Pin
SureshMahanty1-Sep-05 19:16
SureshMahanty1-Sep-05 19:16 
GeneralRe: Problem automating IE MSHTML SELECT Element Pin
Jose Lamas Rios2-Sep-05 3:31
Jose Lamas Rios2-Sep-05 3:31 
GeneralRe: Problem automating IE MSHTML SELECT Element Pin
SureshMahanty2-Sep-05 9:42
SureshMahanty2-Sep-05 9:42 
QuestionSafely closing a process Pin
srev1-Sep-05 6:09
srev1-Sep-05 6:09 
AnswerRe: Safely closing a process Pin
bugDanny1-Sep-05 9:51
bugDanny1-Sep-05 9:51 
AnswerRe: Safely closing a process Pin
ThatsAlok2-Sep-05 20:50
ThatsAlok2-Sep-05 20:50 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.