Прочитать адрес адресата сообщения Оутлук

Тема в разделе "Delphi - Система", создана пользователем Guest_Elvis_*, 8 авг 2005.

Статус темы:
Закрыта.
  1. Guest_Elvis_*

    Guest_Elvis_* Гость

    Есть куча информация, про то как выдрать адресс отправителя из сообщения Оутлук, но не нашёл как выдрать адрес адрессата. Я не использую напрямую МайлАйтем, а делаю через ОлеВариант
    Код (Text):
    outlook, NameSpace: OLEVariant;
    MyFolder: OLEVariant;
    MyItem: Variant;
    outlook  := CreateOleObject('outlook.application');
    NameSpace := outlook.GetNameSpace('MAPI');
    MyItem := outlook.CreateItem(olMailItem);
    MyFolder := Namespace.GetDefaultFolder(olFolderInbox);
    for i := 1 to MyFolder.Items.Count do
     begin
    MyItem := MyFolder.Items[i];
     objMes := objCDO.GetMessage(MyItem.EntryID,MyItem.Parent.StoreID);
     s:= objMes.Subject;
     s1:= objMes.SenderName;
     attCounter := objMes.Attachments.Count;
    .......................................................
    Ниже надо выдирать адресс адрессата, стандартное MyItem.To_ ругается что типа обьект не имеет метода To_
    Помогите найти выход из данной ситуации.
    Заранее благодарен.
     
  2. Guest

    Guest Гость

    Код (Text):
    outlook, NameSpace: OLEVariant;
     MyFolder: OLEVariant;
     MyItem: Variant;
    outlook   := CreateOleObject('outlook.application');
    NameSpace := outlook.GetNameSpace('MAPI');
     MyItem := outlook.CreateItem(olMailItem);
    MyFolder := Namespace.GetDefaultFolder(olFolderInbox);
    for i := 1 to MyFolder.Items.Count do
      begin
    MyItem := MyFolder.Items[i];
      s:= MyItem.Subject;
     s1:= MyItem.SenderName;
     attCounter := MyItem.Attachments.Count;
    .......................................................
    Извените не тот код
     
  3. Barmutik

    Barmutik Гость

    А просто To не пробовали?
     
  4. Barmutik

    Barmutik Гость

    Вопрос встречный .. как прочитать почтовый адрес ОТ кого пришло письмо?
     
  5. Guest

    Guest Гость

    <!--QuoteBegin-Barmutik+8:08:2005, 17:30 -->
    <span class="vbquote">(Barmutik @ 8:08:2005, 17:30 )</span><!--QuoteEBegin-->А просто To не пробовали?
    [snapback]23148" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Просто .То_ не работает ругаясь что automation object doesn't support Method 'To_'.
    На второй вопрос вот на что нарвался при поисках
    Код (Text):
    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
    Где itemOL это MailItem.
     
  6. Barmutik

    Barmutik Гость

    Просмотрев библиотеку типов у Отулука я не смог найти свойство Sender
    у интерфейса MailItem...
     
  7. Elvis

    Elvis Гость

    <!--QuoteBegin-Barmutik+9:08:2005, 09:08 -->
    <span class="vbquote">(Barmutik @ 9:08:2005, 09:08 )</span><!--QuoteEBegin-->Просмотрев библиотеку типов у Отулука я не смог найти свойство Sender
    у интерфейса MailItem...
    [snapback]23175" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    А я и не говорил что objMsg eto MailItem это OleVariant, код рабочий я его проверял, а что это за обьект хрен его знает
     
  8. Barmutik

    Barmutik Гость

    Интересно .. просто встал вопрос достать адресс отправителя через COM и как-то не могу его найти в письме ...
     
  9. Elvis

    Elvis Гость

    Ещё один вопрос есть ли у сообщения Оутлука какойнить уникаьный идентификатор, или чтонибудь уникальное которое неповторяется больше ни у одного письма. Очень хотелось бы чтобы такое было а то без него напряг.
     
  10. Barmutik

    Barmutik Гость

    Не стоит задавать одинаковые вопросы в разных топиках...
     
  11. Elvis

    Elvis Гость

    <!--QuoteBegin-Barmutik+9:08:2005, 14:17 -->
    <span class="vbquote">(Barmutik @ 9:08:2005, 14:17 )</span><!--QuoteEBegin-->Не стоит задавать одинаковые вопросы в разных топиках...
    [snapback]23201" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Общаемся тогда здесь. Нехочется тебя разочаровывать но у меня ЕнтриИД у всех писем одинаковый почему то, нужно чё нить другое
    и кщё 1 вопрос как мне узнать стоит ли у письма пометка "важное2 или нет?
     
  12. Barmutik

    Barmutik Гость

    Хммм.. у меня 100% разные .. и в MSDN написано:

    Для узнавания важности есть свойство Importance
     
  13. Elvis

    Elvis Гость

    <!--QuoteBegin-Barmutik+9:08:2005, 15:51 -->
    <span class="vbquote">(Barmutik @ 9:08:2005, 15:51 )</span><!--QuoteEBegin-->Хммм.. у меня 100% разные .. и в MSDN написано:
    Для узнавания важности есть свойство Importance
    [snapback]23206" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    А чёрт его знает может ето из за того что здесь свой почтовый сервер, но у меня 100% одинаковые я проверял
     
  14. Barmutik

    Barmutik Гость

    Возможно в ситуации с Exchange Server какие-то свои тонкости .. надо рыть литературу ...
     
  15. Elvis

    Elvis Гость

    Ещё 1 вопрос но ето скорее по БД уже:
    Код (Text):
    if valueForCheck = false then
    begin
     ds1.CreateDataSet;
     ds1.Open;
     valueForCheck := true;
    end
    else
     ds1.EmptyDataSet;
    ds1 - TClientDataSet, с помощью филддефа обьявил все поля но почему - то при компиляции при ds1.CreateDataSet ругается типа "Инвалид параметр". Когда же поля обьявляю Филд Едитором то работает но в этом случае ругается на тип WideString, без которого я никак. Могу сказать что следующий код работает, и в нём поля обьявлены FieldsDef-oм:

    Код (Text):
    if check = false then
    begin
      ds.CreateDataSet;
      ds.Open;
      check := true;
    end
    else
    ds.EmptyDataSet;
     
  16. Elvis

    Elvis Гость

    <!--QuoteBegin-Barmutik+10:08:2005, 08:56 -->
    <span class="vbquote">(Barmutik @ 10:08:2005, 08:56 )</span><!--QuoteEBegin-->Возможно в ситуации с Exchange Server какие-то свои тонкости .. надо рыть литературу ...
    [snapback]23230" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    В МСДН-е написанно
     
  17. Barmutik

    Barmutik Гость

    Это да .. но написано что он является уникальным в пределах одного фолдера...


    Насчёт базы данных .. более полный код в студию плиз .. по этому не понятно в чём проблема...
     
  18. pol_g

    pol_g Гость

    <!--QuoteBegin-Barmutik+10:08:2005, 11:47 -->
    <span class="vbquote">(Barmutik @ 10:08:2005, 11:47 )</span><!--QuoteEBegin-->Это да .. но написано что он является уникальным в пределах одного фолдера...
    Насчёт базы данных .. более полный код в студию плиз .. по этому не понятно в чём проблема...
    [snapback]23247" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    С Дата Сетом разобрался уже, просто не знаю всех тонкостей поэтому и возникают проблемы на ровном месте.
     
  19. Elvis

    Elvis Гость

    <!--QuoteBegin-Barmutik+10:08:2005, 10:47 -->
    <span class="vbquote">(Barmutik @ 10:08:2005, 10:47 )</span><!--QuoteEBegin-->Это да .. но написано что он является уникальным в пределах одного фолдера...
    Насчёт базы данных .. более полный код в студию плиз .. по этому не понятно в чём проблема...
    [snapback]23247" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Упс забыл выйти, это я с аккаунта друга написал. Возникла проблема. У мну есть DBGridEh и TClientDataSet. В датасет загоняются данные о некоторых свойств из входящих сообщениях оутлука, и отображаются в датагриде. Мне надо сделать пару колонок грида скрытыми и некоторые неедитабле. Но я не могу связать колонки Датагрида с полями датасета так как грид матерится на то что у дата сета нету датапровайдера или датапакета. Я в этом вообще чайник, помоги советом что мне делать. Заранее благодарен!
     
  20. Barmutik

    Barmutik Гость

    Проблема с КлиентДатасетом следующая .. ему или провайдер подавай или сдеай его stand alone database. Для этого перед добавлением записей обозначь поля с помощью Fields. В делфях естьпример как это делать...

    А ещё проще не майся таким делом .. восопльзуйся виртуальным контролом ... и в нём отображай данные... если конечно не критично именно использование БД.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей