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