Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.15.179.121] |
|
Сообщ.
#1
,
|
|
|
добрый день.
вот пытаюсь отослать простой емаил. но при connect e получаю ошибку 10060 ну вроде тайм аут if(WSAStartup(MAKEWORD(VERSION_MAJOR, VERSION_MINOR), &WSData)) { cout << "Cannot find Winsock v" << VERSION_MAJOR << "." << VERSION_MINOR << " or later!" << endl; return 1; } lpHostEntry = gethostbyname(szSmtpServerName); if(!lpHostEntry) { cout << "Cannot find SMTP mail server " << szSmtpServerName << endl; return 1; } hServer = socket(PF_INET, SOCK_STREAM, 0); if(hServer == INVALID_SOCKET) { cout << "Cannot open mail server socket" << endl; return 1; } // Get the mail service port lpServEntry = getservbyname("mail", 0); // Use the SMTP default port if no other port is specified if(!lpServEntry) iProtocolPort = htons(IPPORT_SMTP); else iProtocolPort = lpServEntry->s_port; // Setup a Socket Address structure SockAddr.sin_family = AF_INET; SockAddr.sin_port = iProtocolPort; SockAddr.sin_addr = *((LPIN_ADDR)*lpHostEntry->h_addr_list); // Connect the Socket if(connect(hServer, (PSOCKADDR) &SockAddr, sizeof(SockAddr))) { DWORD dwError = GetLastError(); // error 10060 cout << "Error connecting to Server socket" << endl; return 1; } |
Сообщ.
#2
,
|
|
|
Возможно порт не правильный или ip адрес. Проверь его.
|
Сообщ.
#3
,
|
|
|
SockAddr.sin_addr = *((LPIN_ADDR)*lpHostEntry->h_addr_list);
надо: SockAddr.sin_addr = *((LPIN_ADDR)*lpHostEntry->h_addr); или SockAddr.sin_addr = *((LPIN_ADDR)*lpHostEntry->h_addr_list[0]); |