• 源码:使用LotusScript发送mime格式邮件


    源码:使用LotusScript发送mime格式邮件

    群友们经常问此类问题,收集下,供参考

    01Sub Initialize()
    02 '定义变量
    03 Dim s As New NotesSession
    04 Dim db As NotesDatabase
    05 Dim body As NotesMIMEEntity, bodyChild As NotesMIMEEntity
    06 Dim header As NotesMIMEHeader
    07 Dim stream As NotesStream
    08 Dim host As String
    09 Dim message As NotesDocument
    10 Set db = s.CurrentDatabase
    11 s.ConvertMIME = False  
    12 ' Do not convert MIME to rich text  Set stream = s.CreateStream
    13 Set message = db.CreateDocument
    14 message.Form = "Memo"
    15 
    16 Set body = message.CreateMIMEEntity
    17 message.Subject = "通过MIME格式发送邮件"
    18 message.SendTo = "squallzhong@gmail.com<SCRIPT type=text/javascript>
    19/* <![CDATA[ */
    20(function(){try{var s,a,i,j,r,c,l=document.getElementById("__cf_email__");a=l.className;if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
    21/* ]]> */
    22</SCRIPT>"  
    23 
    24 Set stream = s.CreateStream()
    25 ' 设置HTML标题
    26 Call stream.WriteText ("<html><head><title>通过MIME格式发送邮件</title>")
    27 ' BEGIN: 设置CSS
    28 Call stream.WriteText (|
    29 <style type="text/css">
    30 <!--
    31 .text, td, tr, p, br, body {
    32 COLOR: #666666;
    33 FONT-FAMILY: Arial, Helvetica, sans-serif;
    34 FONT-SIZE: 12px;
    35 }
    36 a {
    37 font-family: Arial, Helvetica, sans-serif;
    38 color: #663399;
    39 FONT-WEIGHT: bold;
    40 text-decoration: none;
    41 }
    42 -->
    43 </style>
    44 |)
    45 '--------------------------------------------
    46 Call stream.WriteText ({</head>})
    47 ' BEGIN: 设置主体信息
    48 Call stream.WriteText ({<body text="#666666" bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginheight="0" marginwidth="0">})
    49 Call stream.WriteText ({ <table width="100%" border="1" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF"><tr><td>测试MIME邮件-主体表格</td></tr></table>)
    50 Call Stream.WriteText({测试MIME邮件-主体文字})
    51 Call stream.WriteText({</body></html>})
    52 
    53 '将stream中的主体信息内容放置在一个子mime单元中
    54 Set bodyChild = body.CreateChildEntity()
    55 Call bodyChild.SetContentFromText (stream, "text/html;charset=utf-8", ENC_NONE)  
    56 Call stream.Close
    57 Call stream.Truncate
    58 '--------------------------------------------
    59 
    60 '附件单元
    61 Set bodyChild = body.CreateChildEntity()
    62 Set header = bodyChild.createHeader("Content-Type")
    63 Call header.setHeaderVal("multipart/mixed")
    64 
    65 Set header = bodyChild.createHeader("Content-Disposition")
    66 Call header.setHeaderVal("attachment; filename=文档.doc")  
    67 
    68 Set header = bodyChild.createHeader("Content-ID")
    69 Call header.setHeaderVal("文档.doc")  
    70 
    71 Set stream = s.CreateStream()
    72 If Not stream.Open("c:\temp\文档.doc", _
    73 "binary") Then
    74  Print "打开文伯失败"
    75 End If
    76 If stream.Bytes = 0 Then
    77  Print "文件中不包含内容"
    78 End If
    79 Call bodyChild.SetContentFromBytes(stream, "application/msword", ENC_IDENTITY_BINARY)
    80 %REM
    81  application/msword 文档匹配的content-type
    82  如:image/gif application/msword application/pdf application/zip
    83 %END REM
    84 
    85 '发送
    86 Call message.Send (False)  
    87 s.ConvertMIME = True
    88End Sub
  • 相关阅读:
    nandflash 分区相关
    android 动态渐变 字符效果
    《Java是如何快速煮成C#的?》(二):数据访问(1)
    01总体分布下的参数假设检验示例一
    《Java是如何快速煮成C#的?》(一):相似的方法(2)
    SQL Server 2008中SQL之WaitFor
    IIS进程经常崩溃的三个解决思路
    Trace.axdasp.net调试的新境界
    ClickOnce发布时报错:Cannot publish because a project failed to build
    《活法》中一个故事--令托尔斯泰也折服的人性寓言
  • 原文地址:https://www.cnblogs.com/hannover/p/2061792.html
Copyright © 2020-2023  润新知