Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  170

•  TDictionary Custom Sort  3 343

•  Fast Watermark Sources  3 095

•  3D Designer  4 852

•  Sik Screen Capture  3 350

•  Patch Maker  3 555

•  Айболит (remote control)  3 665

•  ListBox Drag & Drop  3 018

•  Доска для игры Реверси  81 737

•  Графические эффекты  3 948

•  Рисование по маске  3 253

•  Перетаскивание изображений  2 633

•  Canvas Drawing  2 761

•  Рисование Луны  2 586

•  Поворот изображения  2 195

•  Рисование стержней  2 170

•  Paint on Shape  1 569

•  Генератор кроссвордов  2 240

•  Головоломка Paletto  1 769

•  Теорема Монжа об окружностях  2 236

•  Пазл Numbrix  1 685

•  Заборы и коммивояжеры  2 059

•  Игра HIP  1 282

•  Игра Go (Го)  1 230

•  Симулятор лифта  1 476

•  Программа укладки плитки  1 219

•  Генератор лабиринта  1 548

•  Проверка числового ввода  1 367

•  HEX View  1 497

•  Физический маятник  1 359

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Прочитать адрес отправителя сообщения для MS Outlook



Оформил: DeeCo

{ 
  If you tried to work with messages from Delphi, you know that received message have the 
  SenderName property (name of sender) but doesn't allow to read the real address of sender. 
  Something like SenderAddress is not available. 

  There exist a few methods to retrieve this information: 

  1. help file says that sender is in Recipients collection 
  with Type property - 0 (olOriginator). 
  But this way does work for any version of MS Outlook. 
  So just iterate thru collection of Recipients and find an item with Type=0 
  couldn't return required value 

  2. as alternative you can read a ReplyTo property - there you'll receive an address 
  (but generally ReplyTo and Sender could be different). 
  For example, in messages which I send from own mail account these values are different. 

  3. to create a new MailItem (just will be destroyed without saving in end of work), 
  define a Recipient as value which you received from SenderName of your original 
  message and call a Resolve method - after that you'll recieve a correct email address of this sender. 

  4. more correct and fast solution is the next: 
}

 var
  s: string;
  objCDO: OLEVariant;
 begin
   objCDO := CreateOLEObject('MAPI.Session');
   objCDO.Logon('', '', False, False);
   objMsg := objCDO.GetMessage(itemOL.EntryID, itemOL.Parent.StoreID);

   s := objMsg.Sender.Address;
   ShowMessage(s);
   objMsg := Unassigned;
   objCDO := Unassigned;
 end


 { where itemOL is a MailItem which contain a SenderName but doesn't contain a SenderAddress }




Похожие по теме исходники

Address Book (адресная книга)

Адресная Книга

Сообщения между процессами Windows

Нейросеть для распознавания образов

 

Механизм станка качалки для нефти

Весы для взвешивания

Кувшины для воды

Доска для игры Реверси

 



Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте