• 源码:使用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
  • 相关阅读:
    vs2013配置opencv2.4.13(txt中复制粘贴即可,一次配置永久使用)
    描述性统计量
    Ubuntu创建、删除文件与目录
    Linux下服务器端开发流程及相关工具介绍(C++)
    TCP 协议如何保证可靠传输
    真实记录疑似Linux病毒导致服务器 带宽跑满的解决过程
    Windbg程序调试--转载
    原来问题在这里-我的memory leak诊断历程
    用WinDbg分析Debug Diagnostic Tool生成的Userdump文件
    一个内存增长问题的分析和处理(三)
  • 原文地址:https://www.cnblogs.com/hannover/p/2061792.html
Copyright © 2020-2023  润新知