Zdravím, jsem úplnej začátečník v C/C++, ale zkoušel jsem si splichtit nějaký program na přístup na mailovou schránku přes POP3. Je to opsaný z knihy od Pirkla o WinSock. Komunikace mi jede (USER, PASS, STAT, LIST) až na RETR - to mi vrátí maximálně první řádek +OK 1523 octets blabla ... a zbytek zprávy to nenačte. Nevíte v čem může být pes? Dík JVot #include "stdafx.h" #include "winsock.h" using namespace std; WSAData wsadata; SOCKET sock; SOCKADDR_IN SockAddrIn; . . . char buf[10000]; int i; int _tmain(int argc, _TCHAR* argv[]) { //inic. Wsock int start_wsock=WSAStartup(MAKEWORD(2,2), &wsadata); if(start_wsock !=0){ cout<<"chyba startu wsock"<<endl; system("pause"); exit(1); } . . SockAddrIn.sin_addr.s_addr=inet_addr("xxx.xxx.xxx.xxx"); if(connect(sock,(sockaddr*) &SockAddrIn,sizeof(SockAddrIn))==SOCKET_ERROR){ cout<<"chyba spojeni se serverem POP3"<<endl; closesocket(sock); system("pause"); exit (1); } . . . . // tohle je všechno ok strcpy (buf, "USER jmeno\n"); send(sock,buf,strlen(buf),0); strcpy(buf,""); i=recv(sock,buf,10000,0); . . . // tady to vrátí jen první řádek +OK blalbla octets strcpy (buf, "RETR 1\n"); send(sock,buf,strlen(buf),0); i=recv(sock,buf,10000,0); cout<<"odpoved srv:"<<buf<<endl; (Received on Thu, 13 Apr 2006 10:51:53 +0200
This archive was generated by hypermail 2.1.8 : 13. 04. 2006, 10:49 CEST