Codice:
#include <stdio.h>
#include <iostream.h>
#include <afxsock.h>
#include <windows.h>
#include <memory.h>
#include <string.h>
void main()
{
HANDLE ThreatPerRicevere;
HANDLE ThreatPerInviare;
cout<<"CLIENT DI POSTA ELETTRONICA"<<endl;
// Initialize Winsock.
WSADATA wsaData;
int iResult = WSAStartup(MAKEWORD(2,2), &wsaData);
if (iResult != NO_ERROR)
printf("Error at WSAStartup()\n");
SOCKET AcceptSocket, Client;
Client=socket(AF_INET,SOCK_STREAM,NULL);
AcceptSocket=socket(AF_INET,SOCK_STREAM,NULL);
if (Client == INVALID_SOCKET)
cout<<"Errore, Client invalido"<<endl;
else
{
struct sockaddr_in sock;
sock.sin_family=AF_INET;
sock.sin_port=110;
sock.sin_addr.s_addr=(inet_addr("192.168.255.80"));
if ( connect( AcceptSocket, (const sockaddr*) &sock, sizeof(sock) ) == SOCKET_ERROR)
{
printf( "Failed to connect.\n" );
WSACleanup();
return;
}
else
{
while(1)
{
char* Buffer_In=new char[6000];
char* Buffer_Out=new char[6000];
memset(Buffer_In,6000,NULL);
memset(Buffer_Out,6000,NULL);
int Recv,Send;
cout<<"Scrivi il messaggio da inviare: "<<endl;
gets(Buffer_Out);
//cin>>Buffer_Out;
cout<<endl;
do
{
Send=send(AcceptSocket,Buffer_Out,6000,0);
memset(Buffer_In,6000,NULL);
memset(Buffer_Out,6000,NULL);
}while(Send==SOCKET_ERROR);
do
{
Recv= recv(AcceptSocket,Buffer_In,6000,0);
}while(Recv==SOCKET_ERROR);
cout<<"Il messaggio ricevuto è: "<<Buffer_In<<endl;
memset(Buffer_In,6000,NULL);
//è una stringa!: StampaBuffer(Buffer,6000);
delete Buffer_In;
delete Buffer_Out;
}
} closesocket(AcceptSocket);
}
}
Ciao... potete dare una controllata a questo codice? Perchè mi servirebbero 2 programmi che facciano la ricezione e l'invio di messaggi di posta elettronica utilizzando i protocolli pop 3 e smtp e utilizzando thread.... grazie