Delphi 发送邮件 通过Office Outlook
网上搜到的Delphi邮件发送系统,绝大多数是使用SMTP协议来发送。
但是事实上它们已经过时了,大多数邮件服务器已经屏蔽了Delphi Indy的邮件发送,从而导致Delphi发送不成功。
事实上,让Delphi通过Outlook.Application来发送邮件,也是非常方便的,而且没有那么多的限制。
以下是我目前使用的,我把它写成了个函数,使用的时候调用一下即可。
不过,使用的前提是,你得现在在本地Outlook上配置好一个账户。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
procedure TForm1.SendOutlookMail(const Recipient,Title,Body,Attachment:string);
const
olMailItem = 0;
var
Outlook: OleVariant;
vMailItem: variant;
begin
try
Outlook := GetActiveOleObject("Outlook.Application");
except
Outlook := CreateOleObject("Outlook.Application");
end;
vMailItem := Outlook.CreateItem(olMailItem);
vMailItem.Recipients.Add(Recipient);
vMailItem.Subject := Title;
vMailItem.Body := Body;
if Attachment <>"" then vMailItem.Attachments.Add(Attachment);
vMailItem.Send;
VarClear(Outlook);
|