Create a Project (Application) in Visual C++ (we have used MSVC 4.0)
The files in the project
Download the source code.a1.cpp #include <windows.h> #include <stdio.h> void abc(char *p) { FILE *fp=fopen("z.txt","a+"); fprintf(fp,"%s\n",p); fclose(fp); } WNDCLASS a;HWND b;MSG c; long _stdcall zzz (HWND,UINT,WPARAM,LPARAM); int _stdcall WinMain(HINSTANCE i,HINSTANCE j,char *k,int l) { a.lpszClassName="a1"; a.hInstance=i; a.lpfnWndProc=zzz; a.hbrBackground=GetStockObject(WHITE_BRUSH); RegisterClass(&a); b=CreateWindow("a1","aaa",WS_OVERLAPPEDWINDOW,1,1,10,20,0,0,i,0); ShowWindow(b,3); while ( GetMessage(&c,0,0,0) ) DispatchMessage(&c); return 1; } long _stdcall zzz (HWND w,UINT x,WPARAM y,LPARAM z) { if ( x == WM_LBUTTONDOWN) { MessageBox(0,"end","end",0); } if ( x == WM_DESTROY) PostQuitMessage(0); return DefWindowProc(w,x,y,z); }
a1.cpp #include <windows.h> #include <stdio.h> void abc(char *p) { FILE *fp=fopen("z.txt","a+"); fprintf(fp,"%s\n",p); fclose(fp); } WNDCLASS a;HWND b;MSG c;char aa[100];struct sockaddr_in A,A1; WSAData ws;long d;SOCKET s,s1;int dw; long _stdcall zzz (HWND,UINT,WPARAM,LPARAM); int _stdcall WinMain(HINSTANCE i,HINSTANCE j,char *k,int l) { a.lpszClassName="a1"; a.hInstance=i; a.lpfnWndProc=zzz; a.hbrBackground=GetStockObject(WHITE_BRUSH); RegisterClass(&a); b=CreateWindow("a1","HTTP server",WS_OVERLAPPEDWINDOW, 1,1,10,20,0,0,i,0); ShowWindow(b,3); while ( GetMessage(&c,0,0,0) ) DispatchMessage(&c); return 1; } long _stdcall zzz (HWND w,UINT x,WPARAM y,LPARAM z) { if ( x == WM_LBUTTONDOWN) { d=WSAStartup(0x0101,&ws); sprintf(aa,"WSAStartup = %ld",d); abc(aa); MessageBox(0,aa,aa,0); s=socket(AF_INET,SOCK_STREAM,0); sprintf(aa,"socket = %ld",s); abc(aa); MessageBox(0,aa,aa,0); A.sin_family=AF_INET; A.sin_port = htons(80); A.sin_addr.s_addr = INADDR_ANY; d=bind(s,(struct sockaddr *)&A,sizeof(A)); sprintf(aa,"bind = %ld",d); abc(aa); MessageBox(0,aa,aa,0); WSAAsyncSelect(s,b,WM_USER+1,FD_ACCEPT); d=listen(s,100); sprintf(aa,"listen = %ld",d); abc(aa); MessageBox(0,aa,aa,0); MessageBox(0,"hi","hi",0); } if (x==WM_USER+1) { dw=sizeof(A1); s1=accept(s,(struct sockaddr *)&A1,&dw); sprintf(aa,"accept s1=%ld",s1); MessageBox(0,aa,aa,0); MessageBox(0,"In Accept","USER+1",0); } if ( x == WM_DESTROY) PostQuitMessage(0); return DefWindowProc(w,x,y,z); }
a1.cpp #include <windows.h> #include <stdio.h> void abc(char *p) { FILE *fp=fopen("z.txt","a+"); fprintf(fp,"%s\n",p); fclose(fp); } WNDCLASS a;HWND b;MSG c;char aa[100],bb[100];struct sockaddr_in A,A1; WSAData ws;long d;SOCKET s,s1;int dw; long _stdcall zzz (HWND,UINT,WPARAM,LPARAM); int _stdcall WinMain(HINSTANCE i,HINSTANCE j,char *k,int l) { a.lpszClassName="a1"; a.hInstance=i; a.lpfnWndProc=zzz; a.hbrBackground=GetStockObject(WHITE_BRUSH); RegisterClass(&a); b=CreateWindow("a1","HTTP server",WS_OVERLAPPEDWINDOW,1,1,10,20,0,0,i,0); ShowWindow(b,3); while ( GetMessage(&c,0,0,0) ) DispatchMessage(&c); return 1; } long _stdcall zzz (HWND w,UINT x,WPARAM y,LPARAM z) { if ( x == WM_LBUTTONDOWN) { d=WSAStartup(0x0101,&ws); sprintf(aa,"WSAStartup = %ld",d); abc(aa); MessageBox(0,aa,aa,0); s=socket(AF_INET,SOCK_STREAM,0); sprintf(aa,"socket = %ld",s); abc(aa); MessageBox(0,aa,aa,0); A.sin_family=AF_INET; A.sin_port = htons(80); A.sin_addr.s_addr = INADDR_ANY; d=bind(s,(struct sockaddr *)&A,sizeof(A)); sprintf(aa,"bind = %ld",d); abc(aa); MessageBox(0,aa,aa,0); d=listen(s,100); sprintf(aa,"listen = %ld",d); abc(aa); MessageBox(0,aa,aa,0); WSAAsyncSelect(s,b,WM_USER+1,FD_ACCEPT|FD_READ); MessageBox(0,"hi from server","hi",0); } if (x==WM_USER+1) { if ( (LOWORD(z)&FD_ACCEPT) == FD_ACCEPT) { dw=sizeof(A1); s1=accept(s,(struct sockaddr *)&A1,&dw); sprintf(aa,"accept s1=%ld",s1); MessageBox(0,aa,aa,0); char *p=inet_ntoa(A1.sin_addr); sprintf(aa,"Addr..p=%s",p); MessageBox(0,aa,aa,0); } if ( (LOWORD(z)&FD_READ) == FD_READ) { recv(y,bb,1000,0); sprintf(aa,"%d..",y); MessageBox(0,bb,aa,0); send(y,"Hello how are you \r\n",14,0); closesocket(y); } } if ( x == WM_DESTROY) PostQuitMessage(0); return DefWindowProc(w,x,y,z); }
a1.cpp #include <windows.h> #include <winsock.h> #include <stdio.h> void abc(char *p) { FILE *fp=fopen("z.txt","a+"); fprintf(fp,"%s\n",p); fclose(fp); } WNDCLASS a;HWND b;MSG c;char aa[200];char bb[20000]; long _stdcall zzz (HWND,UINT,WPARAM,LPARAM); int _stdcall WinMain(HINSTANCE i,HINSTANCE j,char *k,int l) { a.lpszClassName="a1"; a.hInstance=i; a.lpfnWndProc=zzz; a.hbrBackground=GetStockObject(WHITE_BRUSH); RegisterClass(&a); b=CreateWindow("a1","aaa",WS_OVERLAPPEDWINDOW,1,1,10,20,0,0,i,0); ShowWindow(b,3); while ( GetMessage(&c,0,0,0) ) DispatchMessage(&c); return 1; } WSADATA ws;SOCKET s,s1,s2;sockaddr_in A,A1;int d,d1=200; long _stdcall zzz (HWND w,UINT x,WPARAM y,LPARAM z) { if ( x == WM_USER+1) { if ( LOWORD(z)&FD_ACCEPT == FD_ACCEPT) { d=sizeof(A1); s1=accept(s,(struct sockaddr *) &A1,&d); sprintf(aa,"accept s1 %ld",s1); abc(aa); } if(LOWORD(z)&FD_READ == FD_READ) { d=recv(y,bb,2000,0); sprintf(aa,"recv %ld",d); abc(bb); strcpy(aa,"HTTP/1.0 200 OK\r\n" ); strcat(aa,"Date: Sunday Sun, 21 Oct 1995 19:38:46 GMT\r\n"); strcat(aa,"Server: Webster/1.0\r\n"); strcat(aa,"MIME-version: 1.0\r\n"); strcat(aa,"Content-type: text/plain\r\n"); strcat(aa,"Last-modified: Sunday Sun, 21 Oct 1995 19:38:46 GMT\r\n"); strcat(aa,"Content-length: 1000\r\n\r\n"); strcat(aa,"<html>Hello<hr><hr><hi>"); d=send(y,bb,strlen(bb),0); sprintf(aa,"send %ld",d); abc(bb); } MessageBox(0,"WM_USER","WM_USER",0); } if ( x == WM_LBUTTONDOWN) { d=WSAStartup(0x0101,&ws); sprintf(aa,"WSAStartup %ld",d); abc(aa); s=socket(AF_INET, SOCK_STREAM,0); sprintf(aa,"socket %ld",s); abc(aa); A.sin_family=AF_INET; A.sin_port = htons(80); A.sin_addr.s_addr =INADDR_ANY; d=bind(s,(struct sockaddr *) &A,sizeof(A)); sprintf(aa,"bind %ld",d); abc(aa); WSAAsyncSelect(s,b,WM_USER+1,FD_ACCEPT|FD_READ); d=listen(s,100); sprintf(aa,"listen %ld",d); abc(aa); MessageBox(0,"hi","hi",0); } if ( x == WM_DESTROY) PostQuitMessage(0); return DefWindowProc(w,x,y,z); }
Move back to the Vijay Mukhi's Technology Cornucopia Page to learn more about the other new Internet Technologies.