![]() |
outlook adressbuch anzeigen um e-mail adresse auszuwählen
Hallo,
ich möchte aus meinem Programm eine Mail verschicken und wenn ich in meinem Programm z.B. auf den Button An klicke, soll mir das Outlook AdressBuch angezeigt werde, um so die e-Mail adresse auswählen zu können. Aber wie um alles in der Welt mache ich? Ich nehme mal an, dass ich so anfange, aber wie geht es dann weiter?
Delphi-Quellcode:
outlook := CreateOleObject('Outlook.Application');
NameSpace := outlook.GetNameSpace('MAPI'); |
Re: outlook adressbuch anzeigen um e-mail adresse auszuwähle
Hallo Susane,
ich hoffe das hilft dir weiter quelle ![]()
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const Kontaktordner = $0000000A; var outlook, Name, Kontakte, Kontakt: OleVariant; i : Integer; l : TListItem; begin outlook := CreateOleObject('Outlook.Application'); Name := outlook.GetNameSpace('MAPI'); Kontakte := Name.GetDefaultFolder(Kontaktordner); for i := 1 to Kontakte.Items.Count do begin Kontakt := Kontakte.Items.Item(i); l := LV.Items.Add; l.Caption := Kontakt.FullName; l.Subitems.Add(Kontakt.Email1Address); l.Subitems.Add(Kontakt.Email1AddressType); end; Outlook := UnAssigned; end; |
Re: outlook adressbuch anzeigen um e-mail adresse auszuwähle
ok, das klappt dann mittlerweile. Nächste Problem ist nun, dass er nicht auf meine Kontakte zugreifen muss, sondern auf die von Exchange.
Hat dafür auch noch jemand eine Idee? Auf Exchange und das Adressbuch kann ich mittlerweile zugreifen, aber ich bekomme nur den Namen, wie komme ich da noch an die email-adresse?
Delphi-Quellcode:
outlook := CreateOleObject('Outlook.Application');
AddrBu:=Outlook.GetNamespace('MAPI').AddressLists.Item(adressbuch).AddressEntries; For i := 1 to AddrBu.Count Do Begin AddrEntry:=AddrBu.Item(i); ShowMessage(addrEntry.Name+', ' ); end; Outlook := UnAssigned; /*edit*/ ok, so bekomme ich zwar nur den Namen, aber das versenden mit dem Namen funktioniert trotzdem |
AW: outlook adressbuch anzeigen um e-mail adresse auszuwählen
Habe das selbe Problem !
Hat jemand eine Idee ? |
AW: outlook adressbuch anzeigen um e-mail adresse auszuwählen
Wie weit bist du schon gekommen? Wo klemmts genau? Du kannst auch gerne ein Stück deines Quellcodes posten, dann können wir sicher besser helfen.
|
AW: outlook adressbuch anzeigen um e-mail adresse auszuwählen
procedure TForm1.bGetEmailClick(Sender: TObject);
var outlook, NameSpace, Contacts, Contact: OleVariant; i: Integer; begin outlook := CreateOleObject('Outlook.Application'); NameSpace := outlook.GetNameSpace('MAPI'); Contacts := NameSpace.GetDefaultFolder(olFolderContacts); for i := 1 to Contacts.Items.Count do begin Contact := Contacts.Items.Item(i); cbAdressen.Items.Add(Contact.FirstName + ' ; ' + Contact.Email1Address); end; outlook := UnAssigned; end; Bekomme die Vornamen von den Kontakten welche local sind und welche am Exchange Server sind. Jedoch erhalte ich die E-Mail Adressen nur von den lokalen. Bei denen vom Exchange Server ist das E-Mail Feld immer leer. Habe es auch schon mit "Contact.EmailDisplayName" versucht, jedoch ohne Erfolg... |
AW: outlook adressbuch anzeigen um e-mail adresse auszuwählen
Hier sind die Felder beschrieben, evtl. befindet sich die Mailadresse in einem anderen Feld.
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz