1

我正在尝试在“domino”dll(编程语言:C#)的帮助下使用 LOTUS NOTES 发送电子邮件。

我想将邮件签名附加到电子邮件正文中。我希望为签名添加一个.jpg。我还有其他电子邮件正文格式。因此,我决定使用 HTML 进行样式设置和附加签名。浏览网页后发现 NotesRichTextStyle 中有一个属性PassThruHTML根据此链接可以为其赋予的合法值为(-1)、(0)、(255)。

问题是,当我设置 (-1) 时,应用会弹出一条消息,提示“样式值必须为 True、False 或 STYLE_NO_CHANGE(对于 Java 是 YES、NO 或 MAYBE)”。

但是在 c sharp 代码中,它只接受 int 值,而不接受弹出窗口中给出的值。

4

2 回答 2

3

以下是 Ken Pespisa 的参考链接给出的答案的 C# 代码。

NotesSession LNSession = new NotesSession();
NotesDatabase LNDatabase = null;
NotesDocument LNDocument;
NotesMIMEEntity LNBody;
NotesStream LNStream;
NotesMIMEHeader LNHeader;

try
{
    LNSession.Initialize(txtPassword.Text);
    LNDatabase = LNSession.GetDatabase(txtServer.Text, txtUserName.Text, false);
    LNStream = LNSession.CreateStream();
    LNSession.ConvertMime = false;

    //Create an email
    LNDocument = LNDatabase.CreateDocument();
    LNDocument.ReplaceItemValue("Form", "Memo");
    LNBody = LNDocument.CreateMIMEEntity();

    LNHeader = LNBody.CreateHeader("Subject");
    LNHeader.SetHeaderVal("Add your subject here");

    LNHeader = LNBody.CreateHeader("To");
    LNHeader.SetHeaderVal("Give your recipient email address");

    LNStream.WriteText("<html>");
    LNStream.WriteText("<body bgcolor=\"blue\" text=\"white\">");
    LNStream.WriteText("<table border=\"2\">");
    LNStream.WriteText("<tr>");
    LNStream.WriteText("<td>Hello World!</td>");
    LNStream.WriteText("</tr>");
    LNStream.WriteText("</table>");
    LNStream.WriteText("</body>");
    LNStream.WriteText("</html>");
    LNBody.SetContentFromText(LNStream, "text/HTML;charset=UTF-8", MIME_ENCODING.ENC_IDENTITY_7BIT);
    LNDocument.Send(false);
}
catch (Exception e)
{
    MessageBox.Show(e.Message);
}
于 2012-11-29T05:36:02.100 回答
2

如果您只是发送电子邮件,您应该查看NotesMimeEntity课程,并查看此网站以获取示例: http ://www-01.ibm.com/support/docview.wss?uid=swg21098323

PassThruHTML 对您没有多大帮助,除非您在通过 Domino 查看 Notes 文档或表单时尝试在浏览器中显示自定义 HTML。

于 2012-11-28T15:10:53.440 回答