我正在尝试使用LOTUS NOTES在“domino”dll的帮助下发送电子邮件(编程语言:C#)。
我想将邮件签名附加到电子邮件正文中。我希望为签名添加.jpg。我还有其他电子邮件正文格式。因此,我决定使用HTML进行样式设置和附加签名。浏览网页后发现,在NotesRichTextStyle中有一个属性PassThruHTML
。根据此link可以给出的合法值是(-1),(0),(255)。
问题是,当我设置(-1)应用程序弹出一条消息,说“样式值必须为True,False或STYLE_NO_CHANGE(是,否,或可能为Java)”。
但是在尖锐的代码中,它只接受int值,但不接受弹出窗口中给出的值。
答案 0 :(得分: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);
}
答案 1 :(得分:2)
如果您只是发送电子邮件,则应查看NotesMimeEntity
课程,并查看此网站以获取示例:http://www-01.ibm.com/support/docview.wss?uid=swg21098323