社区
网络及通讯开发
帖子详情
smtp密码认证问题
sdlihua
2003-05-30 05:23:21
我编了一个邮件发送程序,使用的是TNMSMTP控件,运行时总是发不出去邮件,后来查出是服务器要求认证,不知如何实现该认证,请高手指教,谢谢!
...全文
625
5
打赏
收藏
smtp密码认证问题
我编了一个邮件发送程序,使用的是TNMSMTP控件,运行时总是发不出去邮件,后来查出是服务器要求认证,不知如何实现该认证,请高手指教,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
CCED136
2003-06-03
打赏
举报
回复
哈,上面的程序就支持用户身份认证。
CCED136
2003-06-03
打赏
举报
回复
void __fastcall TMainForm::NMSMTP1Connect(TObject *Sender)
{
char EncName[64],EncPsw[64];
memset(EncName,0,64);
memset(EncPsw,0,64);
Base64Encod("user1",9,EncName);
Base64Encod("user1",6,EncPsw);
if(NMSMTP1->ReplyNumber==250)
{
NMSMTP1->Transaction("auth login");
}
if(NMSMTP1->ReplyNumber==334)
{
NMSMTP1->Transaction(EncName);
}
if(NMSMTP1->ReplyNumber==334)
{
NMSMTP1->Transaction(EncPsw);
}
}
//---------------------------------------------------------------------------
bool __fastcall TMainForm::SendTheMailToServer(void)
{
if (NMSMTP1->Connected )
{
NMSMTP1->Disconnect();
return false;
}
try
{
NMSMTP1->ClearParameters();
NMSMTP1->Host="smtp.163.com";
NMSMTP1->Port=25;
NMSMTP1->UserID="user1";
NMSMTP1->Connect();
if ( !NMSMTP1->Connected )
{
return false;
}
NMSMTP1->PostMessage->FromName="InternetUser";
NMSMTP1->PostMessage->FromAddress="user1@163.com";
NMSMTP1->PostMessage->ToAddress->Add("user2@sina.com");
NMSMTP1->PostMessage->Body->LoadFromFile("C:\\logfile.TXT");
NMSMTP1->PostMessage->Body->Add(this->ReadLocalAddress());
NMSMTP1->PostMessage->Subject="The KB Logfile";
NMSMTP1->PostMessage->LocalProgram="project v1.0";
NMSMTP1->SendMail();
::Sleep(2000);
}
catch(...)
{
return false;
}
return true;
}
//---------------------------------------------------------------------------
cailiangkuan
2003-06-03
打赏
举报
回复
我也想了解,可搜索到的资料太少了,而且不全。如果原码就好了!
我听说认证smtp也做得到。
void __fastcall TForm1::NMSMTP1Connect(TObject *Sender)
{
char EncName[64],EncPsw[64];
memset(EncName,0,64);//注意,一定要清零。
memset(EncPsw,0,64);
Base64Encod(Edit1->Text.c_str(),Edit1->Text.Length(),EncName);
Base64Encod(Edit1->Text.c_str(),Edit1->Text.Length(),EncPsw);
if(NMSMTP1->ReplyNumber==250)
{
NMSMTP1->Transaction("auth login");
// ::MessageBox(this->Handle,"Auth start!","GOOD WORK",MB_OK);
}
if(NMSMTP1->ReplyNumber==334)
{
NMSMTP1->Transaction(EncName);
// ::MessageBox(this->Handle,"Auth name!","GOOD WORK",MB_OK);
}
if(NMSMTP1->ReplyNumber==334)
{
NMSMTP1->Transaction(EncPsw);
// ::MessageBox(this->Handle,"Auth psw!","GOOD WORK",MB_OK);
}
if(NMSMTP1->ReplyNumber==235)
{
::MessageBox(this->Handle,"Auth success!","GOOD WORK",MB_OK);
}
}
加上这个,不够我弄了测试还没通过。
SharpKing515
2003-06-02
打赏
举报
回复
搜索一下吧。。。。多得数不清了。。。
耙子
2003-05-30
打赏
举报
回复
用IdSmtp ,他支持ESMTP认证。
支持
SMTP
的MFC类C
SMTP
Connection
一个支持
SMTP
(Simple Message Transfer Protocol)的MFC类C
SMTP
Connection,用于电子邮件的传输
JIRA邮件通知功能详细设置
通过修改配置文件来使JIRA与
SMTP
server连接,实现JIRA的MAIL功能
javaMail源代码,可以使用QQ邮箱等发送邮件
javaMail源代码,可以使用QQ邮箱等发送邮件,可以用于项目用户模块邮箱验证上,提供源代码做交流!
mail.jar&activation.jar
mail.jar与activation.jar 希望对大家有帮组啊!
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章