那种html的邮件要怎么收发啊.
html格式的邮件要用什么来显示出来啊.
还有怎么写html格式的邮件啊.
就像foxmail那样可以在里面发图片和背景表格啊.

解决方案 »

  1.   

    导一份.EML文件用文本编辑器查看一下就知道了。
      

  2.   

    html不也是文本吗?
    可以保存在邮件正文中的。
    里面的图片等有些是www上的,有些可以放在附件中或者将html保存成mht。
      

  3.   

    不明白,那怎么像foxmail那样看了.
      

  4.   

    编号: 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:记住多给点分。  ^_^
     
      
      

  5.   

    啊.我晕啊.发错没关系,发点对的就可以了.谢谢了
    ================================================================
    html是文本,用WebBrowser1来显示就行了... 随便YY2句,呵
      

  6.   

    {
            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;
            }
      

  7.   

    上面的代码参考一下吧,这是用Socket发送带附件mail的代码片段,里面同时也传送了,HTML正文。
    顺便提一下,HTML邮件当中的图片等非文本信息都是以Base64代码段保存的,并且给这段代码一个类型名称的标识,而在HTML正文当中只需要指明这个代码段的标识即能显示出来。
      

  8.   

    为什么我把IdMessage1保存为文件后.已后IdMessage1.在读有的会出错有的不会啊.
    部份错误提示:EidException with message clUneven size in Decode ToStream'
    还有怎么指明标识啊.