Как читать интернет заголовок и электронную почту в outlook

Я пытаюсь прочитать электронные заголовки Интернета, которые мы можем просмотреть в свойствах электронной почты в приложении Outlook. Я спрашиваю, есть ли возможность, чтобы получить это, я использую этот код для чтения электронных писем в Outlook.

  Outlook::Application outlook;
  if (!outlook.isNull())
  {
  Outlook::NameSpace session(outlook.Session());
  session.Logon();
  Outlook::MAPIFolder *folder = session.GetDefaultFolder(Outlook::olFolderInbox);

  Outlook::Items* mails = new Outlook::Items(folder->Items());
  mails->Sort("ReceivedTime");
  int num = mails->Count();
  ui->label->setText(QString("I have %1 of messages").arg(QString::number(num)));

  // Indexing starts from 1
  for (int i = 1; i < num; i++)
  {
  Outlook::MailItem mail(mails->Item(i));
  QString s = mail.Subject(); // do something with subject
  QString b = mail.Body(); // do something with body
  ui->plainTextEdit->appendPlainText("subject : \n" + s);
  ui->plainTextEdit->appendPlainText("Body : " + b);
  ui->plainTextEdit->appendPlainText("-----------------------------------------------");
  }
  }

и я проверил Outlook::MailItem для функции, чтобы получить этот заголовок Интернета, но я не нашел, так что если кто-то попробовал это раньше или есть идеи, чтобы решить эту проблему заранее Спасибо

1 ответ

Решение

Вы можете получить доступ к заголовкам Интернета через свойство PR_TRANSPORT_MESSAGE_HEADERS_W. Это свойство и другие свойства MAPI могут быть получены через объект PropertyAccessor. Обратите внимание, что отдельные x-заголовки недоступны через именованное свойство MAPI, они связаны внутри заголовков сообщений, поэтому вам нужно будет проанализировать каждую строку текста, чтобы найти какую-либо конкретную запись заголовка.

Другие вопросы по тегам