![]() |
Wie kann man auf Outlook zugreifen
Ich möchte gerne aus einem Systemkonto heraus (Dienst) auf eine Outlook-Datenbank (Kontakte) zugreifen.
(für einen Anrufmonitor). Ist dieses überhaupt möglich? Vielen Dank, Bommel P.S.: Ich hoffe, ich bin hiermit im richtigen Forum |
Re: Wie kann man auf Outlook zugreifen
Hallo bommel,
ja, das geht. Ich habe hier ein Stück Beispielcode:
Delphi-Quellcode:
Gruss
uses ComObj;
procedure TForm1.Button1Click(Sender: TObject); const olFolderContacts = $0000000A; 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); {now you can read any property of contact. For example, full name and email address} ShowMessage(Contact.FullName + ' <' + Contact.Email1Address + '>'); end; Outlook := UnAssigned; end; {if you need a birthday, you can retrieve it as DateToStr(Contact.Birthday) Any contact item have a lot of properties. See a list (alphabet): Birthday Business2TelephoneNumber BusinessAddress BusinessAddressCity BusinessAddressCountry BusinessAddressPostalCode BusinessAddressPostOfficeBox BusinessAddressState BusinessAddressStreet BusinessFaxNumber BusinessHomePage BusinessTelephoneNumber CompanyAndFullName CompanyMainTelephoneNumber CompanyName ComputerNetworkName Department Email1Address Email1AddressType Email1DisplayName Email2Address Email2AddressType Email2DisplayName Email3Address Email3AddressType Email3DisplayName FirstName FTPSite FullName FullNameAndCompany GovernmentIDNumber Hobby Home2TelephoneNumber HomeAddress HomeAddressCity HomeAddressCountry HomeAddressPostalCode HomeAddressPostOfficeBox HomeAddressState HomeAddressStree HomeFaxNumber HomeTelephoneNumber Initials ISDNNumber JobTitle Language LastName LastNameAndFirstName MailingAddress MailingAddressCity MailingAddressCountry MailingAddressPostalCode MailingAddressPostOfficeBox MailingAddressState MailingAddressStreet MiddleName NickName OfficeLocation OrganizationalIDNumber PersonalHomePage PrimaryTelephoneNumber Profession Suffix Title WebPage} devacs [edit=MrSpock]Delphi Code Tags eingefügt. Mfg, MrSpock[/edit] |
DP-Maintenance
Dieses Thema wurde von "MrSpock" von "Datenbanken" nach "VCL / WinForms / Controls" verschoben.
Hat nichts mit Datenbanken zu tun. |
Re: Wie kann man auf Outlook zugreifen
Hi devacs,
das geht aber leider nur, solange es kein Dienst ist. Outlook greift Benutzerabhängig auf die DB zu. Hat noch irgend jemand eine Idee? |
AW: Wie kann man auf Outlook zugreifen
Hallo,
ich will auch auf Outlook zugreifen, aber es gibt offensichtlich Unterschiede, ob ich Outlook lokal nutze, oder Outlook über einen Server. Beim lokalen Zugriff bekomme ich mit obigem Code die Daten, bei der Servervariante bekomme ich die Meldung, dass es eine Property "BusinessTelephoneNumber" nicht gibt. Muss ich das anders programmieren, wenn ich das Adressbuch auf dem Server durchsuchen will? Da wir in der Firma zwar über Outlook eine Telefonnummer wählen können, aber keine Rufnummernerkennung haben, wollte ich dann die Nummer in ein Programm eingeben und schauen, ob dies im globalen Adressbuch einen Eintrag dazu gibt. Wenn ja, dann wollte ich den Namen anzeigen. Vielleicht muss ich auch mal mit den Leuten von Sie*****s telefonieren. Vielleicht haben die ja die Lösung fertig. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 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 by Thomas Breitkreuz