文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>在域环境中连接echange服务器的代码

在域环境中连接echange服务器的代码

时间:2010-09-02  来源:开心无罪

  string userName = "你的用户名";

  string passWord ="你的密码";

  string domain = "域名";

  string url = "https://exchange服务器地址/EWS/Exchange.asmx";

  ExchangeServiceBinding exchangeServer = new ExchangeServiceBinding();

  ICredentials creds = new NetworkCredential(userName, passWord, domain);

  // 建立信任连接

  exchangeServer.Credentials = creds;

  exchangeServer.Url = url;

  // 定义邮件的收件箱

  DistinguishedFolderIdType[] folderIDArray = new DistinguishedFolderIdType[1];

  folderIDArray[0] = new DistinguishedFolderIdType();

  folderIDArray[0].Id = DistinguishedFolderIdNameType.inbox;

  PathToUnindexedFieldType ptuftDisplayName = new PathToUnindexedFieldType();

  ptuftDisplayName.FieldURI = UnindexedFieldURIType.folderDisplayName;

  PathToExtendedFieldType pteftComment = new PathToExtendedFieldType();

  pteftComment.PropertyTag = "0x3004"; // PR_COMMENT

  pteftComment.PropertyType = MapiPropertyTypeType.String;

  // 定义GetFolderType对象,设置相应属性

  GetFolderType myfoldertype = new GetFolderType();

  myfoldertype.FolderIds = folderIDArray;

  myfoldertype.FolderShape = new FolderResponseShapeType();

  myfoldertype.FolderShape.BaseShape = DefaultShapeNamesType.IdOnly;

  myfoldertype.FolderShape.AdditionalProperties = new BasePathToElementType[2];

  myfoldertype.FolderShape.AdditionalProperties[0] = ptuftDisplayName;

  myfoldertype.FolderShape.AdditionalProperties[1] = pteftComment;

  // 获取服务器中的文件夹的集合

  GetFolderResponseType myFolder = exchangeServer.GetFolder(myfoldertype);

  // 获取收件箱

  FolderInfoResponseMessageType firmtInbox = (FolderInfoResponseMessageType)myFolder.ResponseMessages.Items[0];

  // 显示收件箱

  //Console.WriteLine(string.Format("got folder: {0}", firmtInbox.Folders[0].DisplayName));

  PathToUnindexedFieldType ptuftSubject = new PathToUnindexedFieldType();

  ptuftSubject.FieldURI = UnindexedFieldURIType.itemSubject;

  PathToUnindexedFieldType ptuftBody = new PathToUnindexedFieldType();

  ptuftBody.FieldURI = UnindexedFieldURIType.itemAttachments;

  PathToExtendedFieldType pteftFlagStatus = new PathToExtendedFieldType();

  pteftFlagStatus.PropertyTag = "0x1090"; // PR_FLAG_STATUS

  pteftFlagStatus.PropertyType = MapiPropertyTypeType.Integer;

  // 定义FindItemType对象,准备获取收件箱中的集合

  FindItemType findItemRequest = new FindItemType();

  findItemRequest.Traversal = ItemQueryTraversalType.Shallow;

  findItemRequest.ItemShape = new ItemResponseShapeType();

  findItemRequest.ItemShape.BaseShape = DefaultShapeNamesType.AllProperties;

  findItemRequest.ParentFolderIds = new FolderIdType[1];

  findItemRequest.ParentFolderIds[0] = firmtInbox.Folders[0].FolderId;

  // 获取邮件

  FindItemResponseType firt = exchangeServer.FindItem(findItemRequest);

  // 循环迭代每一封邮件

  foreach (FindItemResponseMessageType firmtMessage in firt.ResponseMessages.Items)

  {

  //如果包含邮件www.qichepeijian.com,显示出来

  if (firmtMessage.RootFolder.TotalItemsInView > 0)

  {

  // 循环迭代每一封邮件详细信息

  foreach (ItemType it in ((ArrayOfRealItemsType)firmtMessage.RootFolder.Item).Items)

  {

  if (((MessageType)(it)).IsRead == false)

  {

  Console.WriteLine();

  Console.WriteLine(string.Format("邮件标题: {0} ", it.Subject));

  Console.WriteLine(string.Format("发件人: {0} ", ((MessageType)(it)).From.Item.Name));

  Console.WriteLine(string.Format("收件人: {0} ", it.DisplayTo));

  Console.WriteLine(string.Format("抄送: {0} ", it.DisplayCc));

  Console.WriteLine(string.Format("大小: {0} ", it.Size.ToString()));

  Console.WriteLine(string.Format("重要性: {0} ", it.Importance.ToString()));

  Console.WriteLine(string.Format("是否已读: {0} ", ((MessageType)(it)).IsRead.ToString()));

  Console.WriteLine(string.Format("是否有附件: {0} ", it.HasAttachments.ToString()));

  Console.WriteLine(string.Format("发送时间:{0}", it.DateTimeSent.ToString()));

  Console.WriteLine(string.Format("接收时间: {0} ", it.DateTimeReceived.ToString()));

  Console.WriteLine();

  }

  }

  }

  }

相关阅读 更多 +
排行榜 更多 +
打螺丝高手

打螺丝高手

模拟经营 下载
解救火柴人计划安卓版

解救火柴人计划安卓版

体育竞技 下载
鸡生化精英安卓版

鸡生化精英安卓版

飞行射击 下载