Hi,
erstmal danke für die Antwort. Schau mal was ich gemacht habe. Wo müsste denn die Class stehen und wie wechslen ich dann in die Gruppe?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const
olFolderContacts = $0000000A;
var
flds, outlook, NameSpace, Contacts, Contact: OleVariant;
i: Integer;
begin
outlook := CreateOleObject('
Outlook.Application');
NameSpace := outlook.GetNameSpace('
MAPI');
Contacts := NameSpace.GetDefaultFolder(olFolderContacts);
flds := NameSpace.Folders(1);
WriteLn(flds.
Name);
//<<--- Ich dachte hier müsste die erste Gruppe stehen, sofern vorhanden.
for i := 1
to Contacts.Items.Count
do
begin
Contact := Contacts.Items.Item(i);
Writeln('
-----------------------');
WriteLn('
Vor und Nachname: '+Contact.FirstName+'
'+Contact.LastName);
//Wenn es eine Gruppe ist, gibt es hier den Fehler: Die Methode 'FirstName' wird vom Automatisierungsobjekt nicht unterstützt.
WriteLn('
Firma: '+Contact.CompanyName);
WriteLn('
FirmaTel.: '+Contact.BusinessTelephoneNumber);
WriteLn('
FirmaFax: '+Contact.BusinessFaxNumber);
WriteLn('
EMailadr.: '+Contact.Email1Address);
WriteLn('
Adresse: '+Contact.BusinessAddress);
WriteLn;
end;
Outlook := UnAssigned;
end;
Nicht wundern wenn es sch.... aussieht. Ich Fummel da nun schon lange dran rum. Das habe ich mir auf folgenden Seiten "zusammen gereimt".
http://www.delphipraxis.net/101082-b...-auslesen.html
https://msdn.microsoft.com/de-de/lib.../ff860950.aspx
Ich bekomme aber nur meine Mailadresse zurück. Nicht den Namen der Gruppe die ich in Kontakte angelegt habe.
Nehme ich statt Namespace.Folders(1); Contacts.Folders(1); kommt Array-Index außerhalb des zulässigen Bereichs.