Einzelnen Beitrag anzeigen

zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.618 Beiträge
 
Delphi 12 Athens
 
#15

AW: Kotaktgruppen aus Kontakte von Outlook

  Alt 25. Jul 2015, 10:51
Nach meinem Wissen ist jede Kontaktgruppe auch wieder eine Liste. Somit kannst du nicht mit dem Index vom ContactFolder.Items.Count durchsteppen.

Bei mir geht es so:

Delphi-Quellcode:
procedure TForm6.Button1Click(Sender: TObject);
const
  olFolderContacts = $0000000A;

var
  outlook, NameSpace, ContactFolder, Item, myDistList: OleVariant;
  i, j: Integer;

begin
  outlook := CreateOleObject('Outlook.Application');
  NameSpace := outlook.GetNameSpace('MAPI');
  ContactFolder := NameSpace.GetDefaultFolder(olFolderContacts);
   for i := 1 to ContactFolder.Items.Count do
   begin
     Item := ContactFolder.Items.Item(i);
     // Hier stellt sich bei dem Item die berühmte Frage: "Was bin ich?"
     if Item.Class = 40 then // ein ContactItem
     begin
        //Memo1.Lines.Add(Item.Firstname + Item.LastName);
     end
     else if Item.Class = 69 then // ein DistListItem
     begin

      //wir haben eine Kontaktliste und diese wollen wir auslesen

      myDistList := Item;

      for j := 1 to myDistList.MemberCount do begin
        Memo1.Lines.Add(myDistList.DLName); // Liefert --> TestGruppe (TestGruppe hat ein Mitglied. Max Mustermann)
        Memo1.Lines.Add(myDistList.GetMember(j).Name); // liefert --> Max Mustermann
      end;

     end;
   end;
  Outlook := UnAssigned;
end;
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat