Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29838
  • 博文数量: 12
  • 博客积分: 570
  • 博客等级: 中士
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-16 09:50
文章分类
文章存档

2009年(12)

我的朋友
最近访客

分类: C/C++

2009-05-23 17:12:03

    不知道为什么,今天一直不能成功的打开indy的邮箱,难道5.19网络大瘫痪到今天还没有解决?抑或是indy的主页被封了?有这种猜测的原因是因为之前接触过一些网站,内容基本上都是介绍控件,产品之类的,并没有谈论国是,竟然上不去,非得动一些歪脑筋,不知道为什么被封。我记得奥运前,有一次上nodepad++的网站,主页上赫然写着奥运之地,人家地狱之类的标语,真是令人震惊和气氛。一个小小的免费开源工具的网站竟然行为不端,然则并没有并没有被封掉,真的是奇怪。
    扯远了,言归正传。因为工作的需要,今天试了一下indy的发邮件的功能。安装网络上的示例及零散的资料,写了个demo,先后遇到如下问题:
    1. ssl的问题。gmail使用了ssl,看协议就知道了(https)。解决方式是使用TIdSSLIOHandlerSocketOpenSSL这个控件,配合TIdSMTP使用。另外,需要到openssl的网站上下载最新的openssl-0.9.8k-i386-win32.zip,否则会提示无法找到正确的openssl library。
    2. 连接不上gmail。标准smtp协议使用端口25,一开始死活连接不上gmail服务器。上网查询才知道使用的是587
    3. 发送邮件时提示 RCPT first错误,这个错误着实让我费了半天劲。经过近一个小时的摸索,终于发现少了一句话,加上即可:
IdMessage->Recipients->EMailAddresses = "";
我一开始是在ReceiptRecipient属性中设置接收人的邮箱地址的,不知道为什么没有起作用。
    4. 发送带中文的邮件时,邮件内容中文部分是乱码。原因是memo控件并不支持unicode。borland 直到最近的版本(2009)才开始支持提供unicode支持,相比之下,微软早在98/99年的vs 6.0中便已经支持unicode。所以不要说一个工具有多烂或者有多好,各有优缺点。公司财力,架构师和产品经理的意识等等原因导致。
 
    这个简单的demo费了我大概两小时的时间,有空的话再把代码整理出来,如有需要,可直接mail给我索取。
阅读(2633) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-12-09 16:56:27

能发给我一份吗?谢谢f4_20@163.com

chinaunix网友2009-11-06 12:19:00

不是发送hotmail是否也可以?能否邮个示例给我?谢谢! garfieldtom@126.com