请问如何在API中发送邮件附件?(不是用VCL)(50分)

  • 主题发起人 主题发起人 hmf
  • 开始时间 开始时间
H

hmf

Unregistered / Unconfirmed
GUEST, unregistred user!
请问如何在API中发送邮件附件?(不是用VCL)
 
procedure sendmail(ip:pchar;port:integer);
var
s:tsocket;
server:tsockaddr;
wsa:twsadata;
recvbuffer,sendbuffer:array[0..255] of char;
begin
wsastartup($0101,wsa);
s:=socket(af_inet,sock_stream,0);
if s<>invalid_socket then
begin
server.sin_port:=htons(port);
server.sin_family:=af_inet;
server.sin_addr.addr:=inet_addr(ip);
connect(s,server,sizeof(server),0);
recv(s,recvbuffer,0);
strpcopy(sendbuffer,'HELO'#13#10);
send(s,sendbuffer,6);
//.......相同的道理发送MAIL FROM: YOUR_MAIL_ADDRESS;DATA;QUIT等命令。
end;
closesocket(s);
wsacleanup;
end;
 
这我知道,附件什么格式啊老兄
 
附件文件的名称加在什么地方?如果是在DATA后发送的话,那该怎么写呢?
 
附件要编码,如果只是文字那么可以有content-type: text/plain
如果是超文本,那么可以用content-type:text/html
如果是附加文件,那么是content-type: 这个单词,我不记得了,反正就是文件流,用
base64进行编码就可以了。主要是要用一个分割符号来进行分割开。
 
呵呵,分数太少了,
等我考完了,再贴出来。
 
道不是我小气,
其实,很多时候需要自己去摸索的。
在不到一个月前,我也是为这个问题捆饶,
最后,干脆自己来用foxmail和outlook拿来分析他们的
eml文件格式,最后总算是弄清楚了。

我10号左右贴出来。
因为现在在学校,要考试。
 
whaoye, 分太少?你还真当我是富翁啊。
BTW,已经OK了
 
>来自:hmf, 时间:2002-1-11 21:35:00, ID:851610
>whaoye, 分太少?你还真当我是富翁啊。
>BTW,已经OK了

很高兴你已经OK了而不是OVER了。
告诉你一个工具
www.google.com
在上面search一下RFC
找到IETF的网址
再在IETF上search一下email,找到相应的RFC,里面有详细的说明
 
多人接受答案了。
 
后退
顶部