接上文,, 可是,,下面再向服务器发送 命令字 却没有反应 了
,,,,,,,,,,,,,
我是 按照 如下 顺序发送的,,,先发
_T("MAIL FROM: <%s>\r\n")
_T("RCPT TO: <%s>\r\n")
_T("DATA\r\n")
邮件体
"\r\n.\r\n"
是不是还有其他的,,我没有想到的呢???
,,,,,,,,,,,,,
我是 按照 如下 顺序发送的,,,先发
_T("MAIL FROM: <%s>\r\n")
_T("RCPT TO: <%s>\r\n")
_T("DATA\r\n")
邮件体
"\r\n.\r\n"
是不是还有其他的,,我没有想到的呢???
解决方案 »
- 按钮的问题?
- EDIT加了 ES_PASSWORD 后,如何让其可以输入中文?
- winpcap获得ip报头的地址有错误
- 在VC中使用SQL语句查询Access数据库,请问如何得到SQL语句的运行结果?
- 请教一个及其菜的问题:如何将浮点型转换成字符串或CString型
- ado向后台数据库存储大文件时,超过20M就不行了
- 执行期效率,inline为什么执行的效率比直接存取data member低?
- 技巧
- 质询大牛,在不给出源代码的情况下。能否添加新功能???
- 我想建一个关于书籍下载的个人主页,把大家所需的的电子书籍集中到一个主页上,方便大家下载!!!请大家把知道的好的电子书籍介绍一下!!!
- 在XP中的ODBC数据源设置?
- 一个关于工程设置的问题
{
CString sHelo;
CString sAuthLogin;
CString sFrom;
CString sTo;
CString sTemp;
CString sEmail;
CString m_strServer;
m_strServer = "host";
TCHAR local[80];
::gethostname(local,80);
sSMTP.Create();
if(sSMTP.Connect(m_strServer,80) && (get_response( CONNECT_SUCCESS )))
{
sHelo.Format( "EHLO %s\r\n", local );
sSMTP.Send(sHelo, strlen(sHelo) );
if( !get_response( GENERIC_SUCCESS ) )
{
sSMTP.Close();
} //Send LOGIN
//
sAuthLogin= "AUTH LOGIN\r\n" ;
sSMTP.Send(sAuthLogin, strlen(sAuthLogin) );
if( !get_response( LOGIN_SUCCESS ) )
{
sSMTP.Close();
} //Send USER
//
sAuthLogin= "c2RqbjE=\r\n" ;
sSMTP.Send(sAuthLogin, strlen(sAuthLogin) );
if( !get_response( LOGIN_SUCCESS ) )
{
sSMTP.Close();
}
//Send PASS
//
sAuthLogin= "********\r\n" ;
sSMTP.Send(sAuthLogin, strlen(sAuthLogin) );
if( !get_response( CHECK_SUCCESS ) )
{
sSMTP.Close();
} // Send the MAIL command
//
sFrom.Format( "MAIL From: <%s>\r\n", (LPCTSTR)("user@host") );
sSMTP.Send((LPCTSTR)sFrom, sFrom.GetLength() );
if( !get_response( GENERIC_SUCCESS ) )
{
sSMTP.Close();
}
// Send RCPT commands (one for each recipient)
//
sTo="RCPT TO:<user@host>\r\n";
sSMTP.Send(sTo, strlen(sTo) );
if( !get_response( GENERIC_SUCCESS ) )
{
sSMTP.Close();
} // Send the DATA command
sTemp = "DATA\r\n";
sSMTP.Send(sTemp, strlen(sTemp));
if( !get_response( DATA_SUCCESS ) )
{
sSMTP.Close();
} // Send the header
//
sSMTP.Send( (LPCTSTR)strHeader, strlen(strHeader) ); //Empty line
sTemp="\r\n";
sSMTP.Send(sTemp, strlen(sTemp)); // Send the body
//
EncodeBody(S);
sSMTP.Send( (LPCTSTR)S, strlen(S) ); // Signal end of data
//
sTemp = "\r\n.\r\n";
sSMTP.Send(sTemp, strlen(sTemp) );
if( !get_response( GENERIC_SUCCESS ) )
{
sSMTP.Close();
} sSMTP.Close();
}
else
{
sSMTP.Close();
}
}
send(m_sockSMTP,(LPCTSTR)strFrom,strFrom.GetLength(),0);
recv(m_sockSMTP,buffer,250,0); strTo.Format(_T("RCPT TO: <%s>\r\n"),(LPCTSTR)msg->m_strTo);
send(m_sockSMTP,(LPCTSTR)strTo,strTo.GetLength(),0);
recv(m_sockSMTP,buffer,250,0);
我的是这样写的,,可是 strFrom.Format(_T("MAIL FROM: <%s>\r\n"),(LPCTSTR)msg->m_strFrom); 返回的是250 OK,可是, strTo.Format(_T("RCPT TO: <%s>\r\n"),(LPCTSTR)msg->m_strTo); 没有返回这是怎么回事啊//???????????