Originally posted by: John
First thank-you for generously contributing your hard work.
SmtpResponse: 220 mysmtpserver.com ESMTP
Anyone had a similar experience? I suspect it has something to do with the MS-Word rendering of the html code which is impossible to read.
Thanks,
Hello Robert,
It seems to work just fine in all of the samples. When I tried to send a larger (400K) html document generated from MS-Word however I get the following debug output and the message is never sent.
SmtpCommand : EHLO SALMON
SmtpResponse: 250-mysmtpserver.com
250-PIPELINING
250-STARTTLS
250-SIZE 0
250 8BITMIME
SmtpCommand : AUTH LOGIN
SmtpResponse: 502 unimplemented (#5.5.1)
SmtpWarning: 502 unimplemented (#5.5.1)
SmtpCommand : MAIL FROM: <info@mysmtpserver.com>
SmtpResponse: 250 ok
SmtpCommand : RCPT TO: <jtgann@yahoo.com>
SmtpResponse: 250 ok
SmtpCommand : DATA
SmtpResponse: 354 go ahead
Encoding took 62ms
SmtpError: 354 go ahead
John
Originally posted by: Cedarmeister
I added your class to a DCOM object, and it worked great. However, I noticed that email addresses that were registered on the outgoing server were not showing up in the "To:" list on the reciever side. Also, all "CC" addresses displayed on the same line as the "To:" addresses on the reciever side. I am currently looking into this, and will hopefully have something soon.
Reply
Originally posted by: Arthur
To smtp.h, add:
CSmtpAddress ReplyTo;
to the public member vars of class CSmtpMessage. To
// Write out the REPLY-TO header
I hope this helps someone.
If you want to change the Reply To address on an email, add
the following code.
smtp.cpp, modify the CommitHeaders() method and append the
following code to the end of it:
strValue.erase();
strHeader = _T("Reply-To");
if (ReplyTo.Name.length())
{
wsprintf(szOut,_T("\"%s\" "),ReplyTo.Name.c_str());
strValue += szOut;
}
if (ReplyTo.Address.length())
{
wsprintf(szOut,_T("<%s>"),ReplyTo.Address.c_str());
strValue += szOut;
}
Headers.Remove(strHeader);
Headers.Add(strHeader,strValue);
Originally posted by: mark Eby
This SMTP function hangs in Win 98 and ME. What is wrong with the code?
ReplyOriginally posted by: Lee
LPSTR pszBuffer = NULL;
LPSTR pszTemp;
int iLenOfWideCharStr;
if (!pByte)
{
// pszBuffer = (LPSTR)malloc(strMsg.length() + 1);
// _T2A(pszBuffer,strMsg.c_str());
.
.
.
iLenOfWideCharStr = WideCharToMultiByte
(CP_ACP,0,strMsg.c_str(),-1,NULL,0,NULL,NULL);
pszBuffer = (LPSTR)malloc(iLenOfWideCharStr * sizeof(char));
WideCharToMultiByte(CP_ACP,0,strMsg.c_str(),
-1,pszBuffer,iLenOfWideCharStr,NULL,NULL);
.
.
.
}
Reply
Originally posted by: dgraham
When CSmtp is trying to send HELLO comand (it happens on every command in fact) my application hangs. Why? WIN98/OUTLOOK EXPRESS
ReplyOriginally posted by: Lee
I give to thanks to creator of CSmtp.
Lee
Originally posted by: Yura
Yura.
When CSmtp is trying to send HELO comand (it happens on every command in fact) my application hangs. Why?
Originally posted by: Jake Lee
Hi!
CSmtp class is very good SMTP class.
I give to thanks to creator of CSmtp.
But I found three problems in CSmtp class.
One is class does not treat CC,BCC fields correctly.
Two is class does not support multiple recipients.
the other is FD_SET bug (this cause almost infinite loop)
The first two solutions will be updated in a week.
(I am translating that to english. I am Korean :) )
The last bug is very serious.
Creator use FD_SET and select method for receiving network packet. but Creator omit FD_ZERO command. so socket descriptors are accumulated in FD array.
"select" returns order of FD array. and test code expect "select" command returns 1. but if FD_ZERO is omitted "select" command return 2, 3, 4... etc...
So goes to infinite.
I suggest that you should insert "FD_ZERO" command before "FD_SET" command.
Regards...
Originally posted by: Clark Laughlin
Is there supposed to be a difference between adding a user as the Recipient versus adding a list of CC: or BCC: recipients? It looks like the code treats them all the same. Is there a way to treat them differently?
Otherwise -- Great Job!
Thanks,
Clark