Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)

Paste

Pasted as C++ by Axel_van_Gau ( 15 years ago )
#define WIN32_LEAN_AND_MEAN

#define _WINSOCKAPI_

#include <windows.h>
#include <winsock2.h>

#define MAX_STRLEN 512

DWORD WINAPI ClientThread(LPVOID);

//HWND hMainWnd;

SOCKET sockMainSocket;
DWORD wClientThread_ID;

char key[] = "BillyGates12345";
char buffer[MAX_STRLEN];

int WINAPI WinMain(HINSTANCE hInst,
       HINSTANCE hPrevInst,
       PSTR   lpszCmdLine,
       int   nCmdShow)
{
  /*MSG msg;
  WNDCLASSEX wcex;
  wcex.cbClsExtra  = 0;
  wcex.cbSize   = sizeof(WNDCLASSEX);
  wcex.cbWndExtra  = 0;
  wcex.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
  wcex.hCursor*/
  
  WORD wVersion_MainSock   = MAKEWORD(2,0);
  WSADATA wsadMainSock;
  WSAStartup(wVersion_MainSock,&wsadMainSock;);
  SOCKADDR_IN sainMainSock;
  sainMainSock.sin_family   = AF_INET;
  sainMainSock.sin_addr.s_addr = htonl(INADDR_ANY);
  sainMainSock.sin_port   = htons(3030);
  sockMainSocket     = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
  bind(sockMainSocket,(SOCKADDR*)&sainMainSock;,sizeof(sainMainSock));

  listen(sockMainSocket, 100);
  CreateThread(0,0,ClientThread,0,0,&wClientThread;_ID);
  
  for(;;)
   Sleep(10);
  
  closesocket(sockMainSocket);
  WSACleanup();

  return (0);
  //return(msg.wParam);
}

DWORD WINAPI ClientThread(LPVOID lpParam)
{  
  memset(buffer,0,MAX_STRLEN);
  SOCKET sockClientSocket = accept(sockMainSocket,0,0);
  CreateThread(0,0,ClientThread,0,0,&wClientThread;_ID);
  for(;;)
  {
   int errcode = recv(sockClientSocket,buffer,MAX_STRLEN,0);
   if(!errcode || errcode==SOCKET_ERROR)
   {
     MessageBox(0,"Нет связи с клиентом!", "Ошибка", MB_OK | MB_ICONASTERISK);
     return(1);
   }
   size_t keylen = strlen(key);
   for (int i=0; MAX_STRLEN; i++)
   {
    buffer[i] ^= key[i%keylen];
   }
   errcode = send(sockClientSocket,buffer,MAX_STRLEN,0);
   if(!errcode || errcode==SOCKET_ERROR)
   {
     MessageBox(0,"Нет связи с клиентом!", "Ошибка", MB_OK | MB_ICONASTERISK);
     return(1);
   }
  }
  closesocket(sockClientSocket);
  return(0);
}

 

Revise this Paste

Your Name: Code Language: