其实网上已经很多了,不过我还是记下来吧,当做自己的笔记也好。
刚开始的时候,真的都不知道怎么配置那几个参数,不过想要了解这些,必须多Lotus notes有一定的了解。好了,废话不多说了,开始进入正题。
1、如果想使用.NET操作Lotus,我们可以使用 Lotus Domino Objects 通过 COM 来访问 Domino 对象,在 Domino 服务器或者任何一个 Notes 客户机(IBM Lotus Domino Designer、Lotus Domino Administrator 或者 Lotus Notes)的安装中都包括 Lotus Domino Objects。如果你的开发环境复合上述的要求,就可以添加一个COM引用:Lotus Domino Objects,然后在项目中引用using Domino;命名空间。
参考网站:http://www.cnblogs.com/xiaoshatian/archive/2008/06/17/1223439.html
2、开始上代码
private NotesSession ns;
private NotesDatabase ndb;
ns.Initialize(password); //密码,本机的notesClient对应的ID文件的密码ndb = ns.GetDatabase(@ServerName, @MailFile, false); //ServerName表示Notes服务器的地址。MailFile指mail数据库(.nsf文件)一般的都在服务器上。
if (!ndb.IsOpen) { ndb.Open(); }NotesDocument doc = ndb.CreateDocument();
3、都配置好了,连接成功了,就可以发送邮件了
NotesDocument doc = ndb.CreateDocument();
doc.ReplaceItemValue("Form", "Memo");
//发件人信息
doc.ReplaceItemValue("From", "jack zhang");
//收件人信息
doc.ReplaceItemValue("SendTo", txtReceiver3.Text.Trim());
WriteLog.Log("添加收件人信息,成功!");
//抄送
if (txtCC3.Text.Trim() != "")
{
doc.ReplaceItemValue("CopyTo", txtCC3.Text.Trim());
}
//邮件主题
doc.ReplaceItemValue("Subject", txtSubject3.Text.Trim());
WriteLog.Log("添加邮件主题,成功!");
if (!string.IsNullOrEmpty(txtContent3.Text))
{
//邮件正文
NotesRichTextItem rt = doc.CreateRichTextItem("Body");
WriteLog.Log("创建邮件正文的对象,成功!");
rt.AppendText((String)txtContent3.Text.ToString());
WriteLog.Log("添加邮件正文,成功!");
}
if (!string.IsNullOrEmpty(txtAttch.Text))
{
//邮件附件
NotesRichTextItem attachment = doc.CreateRichTextItem("attachment");
WriteLog.Log("创建邮件附件的对象,成功!");
attachment.EmbedObject(EMBED_TYPE.EMBED_ATTACHMENT, "", txtAttch.Text, "attachment");
WriteLog.Log("添加邮件附件,成功!");
}
//发送邮件
object obj = doc.GetItemValue("SendTo");
doc.Send(false, ref obj);
doc = null;
发送邮件主要就是这些代码,不过我在客户那边测试的时候,老是报错,:说是尝试读取或写入受保护的内存,这通常是其他内存已损坏,不知道什么问题,不过网上还ka