AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Bei Microsoft Outlook den öffentlichen Ordner auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Bei Microsoft Outlook den öffentlichen Ordner auslesen

Ein Thema von niko022 · begonnen am 8. Okt 2007 · letzter Beitrag vom 21. Aug 2009
Antwort Antwort
niko022

Registriert seit: 2. Okt 2007
46 Beiträge
 
#1

Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 8. Okt 2007, 09:50
Hallo,
ich hätte eine Frage.

Wie kann ich unter Microsoft Outlook die Adressen unter dem öffentlichen Ordner auslesen? Habe hier im Forum zwar schon einige Docus gefunden, aber ich hänge an dem Problem das Verzeichnis des öffentlichen Ordners
auszuwählen. Dazu habe ich hier leider nichts gefunden.

Hier mein Code. Wenn ich den Standardcontainer meiner eigene Contacte (olFolderContacts) auslese funktioniert es
einwandfrei. Habe es im Quellcode ausdokumentiert. Ich möchte aber einen anderen Ordner auswählen können. Den
öffentlichen Ordner der für alle User zur Verfügung steht. Die Zeile direkt darunter. Leider bringt er mir hier einen Fehler (Operator oder Semikolon fehlt). Kann den Quellcode nicht compilieren.

Was paßt dort mit der Syntax nicht? Muß wie ich gesehen habe eigentlich mit .Folders funktionieren, aber
irgendwie geht es nicht. Muß ich den Folder irgendwie anderst auswählen?

Delphi-Quellcode:

procedure TForm1.Button2Click(Sender: TObject);
var
  aNameSpace : NameSpace;
  pub : MAPIFolder;
  aContactItem : ContactItem;
  iCnt : Integer;
  strOpen, strAOpen, strAdressen : String;
begin
  strOpen := 'Öffentlicher Ordner';
  strAOpen := 'Alle Öffentlichen Ordner';
  strAdressen := 'Adressen';

  OutlookApplication1.Connect;
  aNameSpace := OutlookApplication1.GetNamespace('MAPI');

  //pub := aNameSpace.GetDefaultFolder(olFolderContacts);
  pub := aNameSpace.Folders(strOpen).Folders(strAOpen).Folders(strAdressen); // <= Operator oder Semikolon fehlt.

  for iCnt := 1 to pub.Items.Count do
    begin
      aContactItem := pub.Items.Item(iCnt) as ContactItem;
      ListBox1.Items.Add(Format('%s : %s', [aContactItem.FirstName,
                         aContactItem.Email1Address]));
    end;
  OutlookApplication1.Disconnect;
end;
würde mich über jede Hilfe freuen. Vielleicht schwirt irgendwo eine Doku rum, wie man Folder auswählen kann oder es gibt jemanden der so was ähnliches schon mal in Delphi gemacht hat.

Danke.
  Mit Zitat antworten Zitat
Benutzerbild von f.siebler
f.siebler

Registriert seit: 15. Jan 2007
Ort: Hamburg
170 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 8. Okt 2007, 10:08
Moin,

  pub := aNameSpace.Folders(strOpen).Folders(strAOpen).Folders(strAdressen); // <= Operator oder Semikolon macht irgendwie wenig Sinn. Versuch es doch mal mit einzel schritten...
Und einfach erst mal den ersten Ordner öffnen, und dann mit unterordnern weiter versuchen.
Und dabei bitte auch bedenken, dass es sich hierbei ja um Exchange handelt. Und bei engl. Nutzern die Ordner anders heißen...
Viele Grüße aus Hamburg
Fabian
sql-praxis.net: sql von der Theorie in die Praxis...
  Mit Zitat antworten Zitat
niko022

Registriert seit: 2. Okt 2007
46 Beiträge
 
#3

Re: Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 8. Okt 2007, 10:12
Vielen Dank ertmal für die schnelle Rückmeldung.

Gibt es dort evtl. ein Beispiel hier im Forum bzw. eine Doku? Ich habe vorher schon mal versucht auf
einen einzelnen Ordner zuzugreifen, aber da hat er mir den selben Fehler geworfen.
  Mit Zitat antworten Zitat
niko022

Registriert seit: 2. Okt 2007
46 Beiträge
 
#4

Re: Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 8. Okt 2007, 10:47
Ich bin einen Schritt weiter gekommen. Falls es jemanden interessiert oder er dies auch benötigt.

Mit

Delphi-Quellcode:

pub := OutlookApplication1.ActiveExplorer.CurrentFolder.Folders.Item(strAdressen);
kann man einen Ordner im Outlook Explorer auswählen. Wie man innerhalb des Baums wechselt weis ich jetzt auch
noch nicht.

Danke auf jedem Fall soweit.
  Mit Zitat antworten Zitat
niko022

Registriert seit: 2. Okt 2007
46 Beiträge
 
#5

Re: Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 8. Okt 2007, 14:24
Weis jemand wie man Verteilerlisten überspringen kann? Dort bricht er beim einlesen bei mir ab.
Die Kontaktdaten ließt er einwandfrei mit dem letzten geposteten Befehl ein.

Vielen Dank.
  Mit Zitat antworten Zitat
niko022

Registriert seit: 2. Okt 2007
46 Beiträge
 
#6

Re: Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 9. Okt 2007, 07:40
Weis jemand wie man innerhalb des Microsoft Outlook Explorer Verzeichnis auswählen kann.

Ich habe das erste Element (Verzeichnis) des Outlook Explorers auswählen können.


OutlookApplication1.ActiveExplorer.CurrentFolder.Folders.GetFirst; Danach durchlaufe ich eine Schleife und versuch das nächste Element (Verzeichnis)zu selektieren.

OutlookApplication1.ActiveExplorer.CurrentFolder.Folders.GetNext; Er findet dort aber keine Kontakt obwohl dort Kontakte vorhanden sind.
Er nimmt nur das erste Verzeichnis bei GetFirst ließt dort alle Kontakt aus, aber bei GetNext
springt er nicht ins nächste Verzeichnis.

Vielleicht weis jemand Rat.
Vielen Dank
  Mit Zitat antworten Zitat
ManuelR

Registriert seit: 14. Dez 2005
Ort: Backnang
57 Beiträge
 
Delphi 2010 Professional
 
#7

Re: Bei Microsoft Outlook den öffentlichen Ordner auslesen

  Alt 21. Aug 2009, 20:17
Hallo

gibt es eigentlich hier neue Erkenntnisse wie man an die Adressen in den öffentlichen Ordern kommt ? Die lokalen sind
kein Problem. Kenn' mich mit dem Exchange-Server überhaupt nicht aus.



Danke
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz