社区
Delphi
帖子详情
那种html的邮件要怎么收发啊.急啊.谢谢了.
sum008
2005-01-25 12:33:30
那种html的邮件要怎么收发啊.
html格式的邮件要用什么来显示出来啊.
还有怎么写html格式的邮件啊.
就像foxmail那样可以在里面发图片和背景表格啊.
...全文
99
10
打赏
收藏
那种html的邮件要怎么收发啊.急啊.谢谢了.
那种html的邮件要怎么收发啊. html格式的邮件要用什么来显示出来啊. 还有怎么写html格式的邮件啊. 就像foxmail那样可以在里面发图片和背景表格啊.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sum008
2005-01-27
打赏
举报
回复
为什么我把IdMessage1保存为文件后.已后IdMessage1.在读有的会出错有的不会啊.
部份错误提示:EidException with message clUneven size in Decode ToStream'
还有怎么指明标识啊.
僵哥
2005-01-25
打赏
举报
回复
上面的代码参考一下吧,这是用Socket发送带附件mail的代码片段,里面同时也传送了,HTML正文。
顺便提一下,HTML邮件当中的图片等非文本信息都是以Base64代码段保存的,并且给这段代码一个类型名称的标识,而在HTML正文当中只需要指明这个代码段的标识即能显示出来。
僵哥
2005-01-25
打赏
举报
回复
{
TMemoryStream *memstr;
ppp++;
memstr=new TMemoryStream();
try
{
AnsiString sendtext=AnsiString("Message-ID: <000e01c26603$6f0e7a30$0a00a8c0@yj01>")+
"\r\nFrom: \""+Edit1->Text.Trim()+"\" <"+FROM->Text.Trim()+">\r\n"+
"To: <"+TO->Text.Trim()+">\r\n";
if(TOCC->Text.Trim()!="")
sendtext+=AnsiString("Cc: <"+TOCC->Text.Trim()+">\r\n");
SYSTEMTIME t;
GetLocalTime(&t);
AnsiString tday[7]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"},
tmon[12]={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
if(SUBJECT->Text.Trim().Length()>0)
sendtext+="Subject: =?gb2312?B?"+EncodeBase64(SUBJECT->Text.Trim())+"?=\r\n";
else
sendtext+="Subject:\r\n";
sendtext+="Date: "+tday[t.wDayOfWeek]+Now().FormatString(", dd ")+tmon[t.wMonth-1]+Now().FormatString(" yyyy hh:mm:ss +0800")+"\r\n"+
"MIME-Version: 1.0\r\n"
"Content-Type: multipart/mixed;\r\n"
" boundary=\"----=_NextPart_000_000A_01C26646.7D0E7AC0\"\r\n"+
"X-Priority: 3\r\n"+
"X-MSMail-Priority: Normal\r\n"+
"X-Mailer: Morncolorsoft E_Mail Sender 1.00.0000.0000\r\n"+
"X-Mime: Morncolorsoft Mailer Inside V1.00.0000.0000\r\n\r\n"+
"This is a multi-part message in MIME format.\r\n\r\n"+
"------=_NextPart_000_000A_01C26646.7D0E7AC0\r\n"+
"Content-Type: multipart/alternative;\r\n"+
" boundary=\"----=_NextPart_001_000B_01C26646.7D0E7AC0\"\r\n\r\n\r\n"+
"------=_NextPart_001_000B_01C26646.7D0E7AC0\r\n"+
"Content-Type: text/plain;\r\n"+
" charset=\"gb2312\"\r\n"+
"Content-Transfer-Encoding: base64\r\n\r\n"+
EncodeBase64(Body->Text)+"\r\n\r\n"+
"------=_NextPart_001_000B_01C26646.7D0E7AC0\r\n"+
"Content-Type: text/html;\r\n"+
" charset=\"gb2312\"\r\n"+
"Content-Transfer-Encoding: base64\r\n\r\n"+
EncodeBase64(AnsiString("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\r\n")+
"<HTML><HEAD>\r\n"+
"<META http-equiv=Content-Type content=\"text/html; charset=gb2312\">\r\n"+
"<META content=\"MSHTML 6.00.2600.0\" name=GENERATOR>\r\n"+
"<STYLE></STYLE>\r\n"+
"</HEAD>\r\n"+
"<BODY bgColor=#ffffff>\r\n"+
"<DIV><FONT size=2><PRE>"+Body->Text+"</PRE></FONT></DIV></BODY></HTML>")+
"\r\n------=_NextPart_001_000B_01C26646.7D0E7AC0--\r\n";
if(Attach->Count>0)
{
memstr->WriteBuffer(sendtext.c_str(),sendtext.Length());
for(int kk=0;kk<Attach->Count;kk++)
if(FileExists(Attach->Items->Strings[kk]))
{
AnsiString sendtextt=AnsiString("\r\n------=_NextPart_000_000A_01C26646.7D0E7AC0\r\n")+
"Content-Type: application/octet-stream;\r\n"+
" name=\""+ExtractFileName(Attach->Items->Strings[kk])+"\"\r\n"+
"Content-Transfer-Encoding: base64\r\n"+
"Content-Disposition: attachment;\r\n"+
" filename=\""+ExtractFileName(Attach->Items->Strings[kk])+"\"\r\n\r\n";
memstr->Seek(0,soFromEnd);
memstr->WriteBuffer(sendtextt.c_str(),sendtextt.Length());
EncodeBase64File(Attach->Items->Strings[kk],memstr);
memstr->Seek(0,soFromEnd);
AnsiString ttt="\r\n";
memstr->WriteBuffer(ttt.c_str(),ttt.Length());
}
AnsiString sendtexttt="\r\n------=_NextPart_000_000A_01C26646.7D0E7AC0--\r\n\r\n.\r\n";
memstr->Seek(0,soFromEnd);
memstr->WriteBuffer(sendtexttt.c_str(),sendtexttt.Length());
memstr->Seek(0,soFromBeginning);
//Mess->Lines->LoadFromStream(memstr);
Socket->SendStream(memstr);
}
else
Socket->SendText(sendtext+"\r\n.\r\n");
}
catch(...)
{
memstr->Free();
}
break;
}
jackie168
2005-01-25
打赏
举报
回复
啊.我晕啊.发错没关系,发点对的就可以了.谢谢了
================================================================
html是文本,用WebBrowser1来显示就行了... 随便YY2句,呵
sum008
2005-01-25
打赏
举报
回复
啊.我晕啊.发错没关系,发点对的就可以了.谢谢了.
jackie168
2005-01-25
打赏
举报
回复
楼主不好意思,偶发错贴了,呵
jackie168
2005-01-25
打赏
举报
回复
编号: 21 发送者 c1234567812345678 发送时间 2005-1-25 13:03:18 删除 回复
内容 ALT+TAB
这个能不能也屏蔽掉,要不然也会使鼠标限制失效.
----------------------------------------------------------------
var KHK: HHook;
tmp: integer;
function HookProc(ICode: integer;WP:WParam;LP:LParam):LResult;
begin
Result:=CallNextHookEx(KHK,0,0,0);
end;
使用下列语句开始锁定:
KHK:=SetWindowsHookex(WH_JOURNALPLAYBACK,@HookProc,HInstance,0);
使用下列语句结束锁定:
UnHookWindowsHookEx(KHK);
这时候不能屏蔽Windows的系统键Ctrl-Alt-Tab,Ctrl-Esc,Alt-Tab等
你就可以使用:
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @tmp, 0);//锁起来
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @tmp, 0);//打开吧
PS:记住多给点分。 ^_^
sum008
2005-01-25
打赏
举报
回复
不明白,那怎么像foxmail那样看了.
北光
2005-01-25
打赏
举报
回复
html不也是文本吗?
可以保存在邮件正文中的。
里面的图片等有些是www上的,有些可以放在附件中或者将html保存成mht。
僵哥
2005-01-25
打赏
举报
回复
导一份.EML文件用文本编辑器查看一下就知道了。
NW.JS 跨平台桌面客户端新手快速入门实战
如果你想找的就是一个可以跨平台的、轻量级的图形界面开发的库,轻松快捷地开发新一代桌面客户端软件程序。那么,大喵给大家推荐NW.JS, 它就像一座灯塔,冥冥之中照亮了桌面UI图形开发前进的方向。我们来看下它的基本特点:1. 支持用
HTML
5, CSS3, JS和WebGL来写应用程序,包括桌面端和移动端;2. 完全支持Node.js APIs和所有的第三方模块;3. 性能也不会很差,对于轻量级的应用足够了;4. 对应用进行打包和发布十分简单,也就是说写一份代码很容易移植到不同的平台(包括主流的Linux, Mac OS X 和 Windows);课程基本介绍:本课程属于 NW.JS新手入门跨平台项目实战课程,适合各个阶段的开发人员,大喵将会教会大家学习NW技术且掌握如何使用前端技术(
HTML
5,CSS3,Javascript)轻松愉快地快速开发新一代跨平台桌面客户端应用。
廖雪峰Python 2.X 教程
Python简介Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。当你用一种语言开始作真正的软件开发时,你除了编写代码外,还需要很多基本的已经写好的现成的东西,来帮助你加快开发进度。比如说,要编写一个电子
邮件
客户端,如果先从最底层开始编写网络协议相关的代码,那估计一年半载也开发不出来。高级编程语言通常都会提供一个比较完善的...
Outlook Express 使用技巧大全之应用篇
很多朋友使用IE软件包中的OutLook Express(以下简称OE)来
收发
电子
邮件
。对初学者来说,根据提示或向导的确很容易使用这个软件,但对一些想深入了解它和高效使用它的用户来说,向导和在线帮助却又显得有点力不从心。由于没有掌握其中的一些技巧和方法,就经常遇到这样或者那样的问题搞不懂,于是具体操作时走了不少弯路。为了能使大家在使用OE时更方便快捷一点,笔者将自己平时积攒的一些经...
postfix
邮件
系统完整版
http://www.kuqin.com/article/14mail/553326.
html
[原创] postfix
邮件
系统完整版来源 chinaunix.net 酷勤网整理redhat9+postfix+cyrus-sasl+mysql+postfixadmin+courier-imap+courier-
cnBeta.COM 2010年度精彩评论
cnBeta正是有了各位网友的奇思妙想和踊跃的参与才会如此地有趣。2010年的精彩评论回顾比往年来得晚了一些,不过没关系,精彩程度一点也不输于往年,让我们一起来回顾下2010年的精彩评论和新闻吧。 50.别
急
,楼上们,等这个灯泡熄灭了还有专门的新闻,然后熄灭以后被人拍卖了还有新闻,收藏的新闻,价值最高灯泡的新闻,被修复的新闻,被飞利浦换上LED继续展览的新闻,被转手最多...
Delphi
5,392
社区成员
262,731
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章