尊敬的客户您好,经我们多年的网站制作、网络营销经验,请建站和优化同时做,以达到最好的推广效果!----创赢网络 2012-06
加入收藏设为首页
  • [2013-8-7]洛阳贷款 洛阳小额贷款公司网站上线
  • [2013-8-4]洛阳开锁公司 洛阳开锁电话优化
  • [2013-5-25]洛阳聚鑫钢绳有限公司网站上线
  • [2013-5-20]吉利区图书馆网站备案通过上线开通
  • [2013-5-13]洛阳旭晋昇商贸有限公司 食品批发零售
  • [2013-4-14]洛阳市建投节能技术服务有限公司 新版上线
  • [2013-4-11]南阳顽石玉器工作室网站上线
  • ------专业网站设计制作、网站排名优化、建设一流品牌!
    新闻正文 ·您的位置:首页 > 新闻中心 > 技术中心 > 查看新闻

    如何在 C# 中发起会议之类的特殊邮件

    作者:admin  来源:admin  发表时间:2009-11-29 17:13:58  点击:3198
    从C#中调用Outlook中的API,可以发起会议之类的特殊邮件。方法如下:

    创建项目后,为它添加.NET引用:“Microsoft.Office.Interop.Outlook“的引用,即可调用,需要注意的是,在添加的时候,注意一下Office版本号。

    在调用其API发起会议的过程中,遇到了一个问题:

    创建完一个约会条目后,找了很久没找到如何为这一约会指定“发件人”,后来一想,WindowCF中,查找人员信息有个OutlookSession的东东,

    那这Outlook会不会有同样的方式呢,经过测试,还真的找到方法,原来,它的API指定的发件人是和你机上运行的Outlook的帐户设置直接相关的。

    通过ApplicationClass.Session.Accounts即可找到您设置的帐户集合,需要特别特别注意的是,在这里,取某个人员时,集合的索引是从1开始,而不是

    从0开始。找到相关的帐户后,可以通过AppointmentItem.SendUsingAccount属性来指定约会的发件人。

    下面是测试的代码,在WIN2003+OFFICE12下运行通过,成功创建会议:

    以下为引用的内容:

    usingSystem;
    usingSystem.Collections.Generic;
    usingSystem.Text;
    usingMicrosoft.Office.Interop.Outlook;
    /**/////////////////////
    /**//*调用Outlookapi发起会议
    /*mcjeremy@cnblogs.com
    ////////////////////
    namespaceOutlookAPI
    {
    classProgram
    {
    staticvoidMain(string[]args)
    {
    try
    {
    ApplicationClassoApp=newMicrosoft.Office.Interop.
    Outlook.ApplicationClass();
    //会议是约会的一种
    AppointmentItemoItem=(AppointmentItem)oApp.CreateItem(OlItemType.olAppointmentItem);
    oItem.MeetingStatus=OlMeetingStatus.olMeeting;
    oItem.Subject="主题";
    oItem.Body="内容";
    oItem.Location="地点";
    //开始时间 
    oItem.Start=DateTime.Now.AddDays(1);
    //结束时间
    oItem.End=DateTime.Now.AddDays(2);
    //提醒设置
    oItem.ReminderSet=true;
    oItem.ReminderMinutesBeforeStart=5;
    //是否全天事件
    oItem.AllDayEvent=false;
    oItem.BusyStatus=OlBusyStatus.olBusy;
    //索引从1开始,而不是从0
    //发件人的帐号信息
    oItem.SendUsingAccount=oApp.Session.Accounts[2];
    //添加必选人
    Recipientforce=oItem.Recipients.Add("mailuser2@mailserver.com");
    force.Type=(int)OlMeetingRecipientType.olRequired;
    //添加可选人
    Recipientopt=oItem.Recipients.Add("mailuser3@p.mailserver.com");
    opt.Type=(int)OlMeetingRecipientType.olOptional;
    //添加会议发起者
    Recipientsender=oItem.Recipients.Add("mailuser1@mailserver.com");
    sender.Type=(int)OlMeetingRecipientType.olOrganizer;
    oItem.Recipients.ResolveAll();
    //oItem.SaveAs("d:/TEST.MSG",OlSaveAsType.olMSG);
    oItem.Send();
    //MailItemmItem=(MailItem)oApp.CreateItem(OlItemType.olMailItem);
    //RecipientrTo=mItem.Recipients.Add("****");
    //rTo.Type=(int)OlMailRecipientType.olTo;
    //RecipientrCC=mItem.Recipients.Add("****");
    //rCC.Type=(int)OlMailRecipientType.olCC;
    //RecipientrBC=mItem.Recipients.Add("****");
    //rBC.Type=(int)OlMailRecipientType.olBCC;

    Console.WriteLine("OK");
    }
    catch(System.Exceptionex)
    {
    Console.WriteLine(ex.Message);
    }

    Console.ReadLine();
    }
    }
    }


    您的需求

    联系我们

    正确的选择

    金亚洲安全吗