|
Как при помощи вин апи отправить
письмо
[NIKEL] © (02.03.02
08:29)
void SendMail(void)
{
SOCKET nSMTPServerSocket;
struct sockaddr_in smtp_address;
int nConnect;
int iLength;
int iMsg = 0;
int iEnd = 0;
BYTE sBuf[4096];
char *MailMessage[] =
{
"HELO axel.ru\r\n",
"MAIL FROM:<vasya_pupkin@cool_mail.ru>\r\n", //
адрес отправителя
"RCPT TO:<purpe@usa.net>\r\n",
// адресок получателя
"DATA\r\n",
"Самое крутое сообщение!!!\r\n\r\n.\r\n", //
тело сообщения
"QUIT\r\n",
NULL
};
nSMTPServerSocket = socket(PF_INET, SOCK_STREAM, 0);
if(nSMTPServerSocket != INVALID_SOCKET) {
smtp_address.sin_family = AF_INET;
// далее вносим в структуру IP-адрес сервера, через который
пойдёт письмо
smtp_address.sin_addr.s_addr = inet_addr("212.96.192.1");
smtp_address.sin_port = htons(25);
nConnect = connect(nSMTPServerSocket, (PSOCKADDR)&smtp_address,
sizeof(smtp_address));
if(nConnect) {
}
else {
do {
iLength = recv(nSMTPServerSocket, (LPSTR)sBuf+iEnd,
sizeof(sBuf)-iEnd, 0);
iEnd += iLength;
sBuf[iEnd] = '\0! ';
send(nSMTPServerSocket, (LPSTR)MailMessage[iMsg],
strlen(MailMessage[iMsg]), 0);
iMsg++;
} while(MailMessage[iMsg]);
}
closesocket(nSMTPServerSocket);
}
}
|