Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Exchange Anbindung (https://www.delphipraxis.net/159621-exchange-anbindung.html)

Jambs 5. Apr 2011 15:35

Exchange Anbindung
 
Hi,

ich muss ein Programm schreiben, mit dem ich alle Mails aus einem öffentlichen Ordner in eine Datenbank schreiben muss. Das schreiben in die Datenbank ist kein Problem. Jedoch weiß ich nicht wie ich mich mit dem Exchange verbinden kann bzw. wie ich diese Mails aus dem Ordner auslesen kann.

Folgende Produkte stehen mir zur Verfügung:
Microsoft Windows Server Standard 2008
Microsoft Exchange Server Standard 2010
Delphi 7 / Delphi 2009
Advantage Database


Danke schon mal im vorraus


Alex

mkinzler 5. Apr 2011 16:06

AW: Exchange Anbindung
 
Delphi-Quellcode:
Ordner := OutlookApp.Session.Folders.Item('Öffentliche Ordner')
                               .Folders.Item('Alle Öffentlichen Ordner')
                               .Folders.Item('<Ordnername>');

Jambs 5. Apr 2011 22:01

AW: Exchange Anbindung
 
Zitat:

Zitat von mkinzler (Beitrag 1093199)
Delphi-Quellcode:
Ordner := OutlookApp.Session.Folders.Item('Öffentliche Ordner')
                               .Folders.Item('Alle Öffentlichen Ordner')
                               .Folders.Item('<Ordnername>');

Danke und kann ich die Verbindung zum Exchange aufbauen?

Willmar.Heinrich 6. Apr 2011 06:50

AW: Exchange Anbindung
 
Hi Alex,

schau mal auf http://www.gangl.de, Thomas Gangl hat diverse Agents im Angebot, die das für Dich machen können.

mkinzler 6. Apr 2011 07:16

AW: Exchange Anbindung
 
Zitat:

Danke und kann ich die Verbindung zum Exchange aufbauen?
Der Code bedint natürlich eine eingerichtetes Mapi-Profil. Zudem wird Outlook benötigt.

Hier mal ein kleines Testprogramm:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, OleServer, OutlookXP;

type
  TForm1 = class(TForm)
    OutlookApp: TOutlookApplication;
    ListBox1: TListBox;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
    ordner, i_: OleVariant;
    i: Integer;

begin
    Ordner := OutlookApp.Session.Folders.Item('Öffentliche Ordner')
                                .Folders.Item('Alle Öffentlichen Ordner')
                                .Folders.Item('<Name des Ordners>');
    for i := 1 to ordner.items.Count do
    begin
        ListBox1.Items.Add( ordner.items.item[i].Subject);
    end;

end;

end.

Jambs 6. Apr 2011 09:59

AW: Exchange Anbindung
 
Ich werde es jetzt mal versuchen.

Gibt es aber auch eine Möglichkeit ohne Outlook?

Jambs 6. Apr 2011 11:27

AW: Exchange Anbindung
 
Beim ausführen bekomm ich die Meldung

Der versuchte Vorgang konnte nicht ausgeführt weren. Ein Objekt wurde nicht gefunden.

Und steht dann auf dieser Zeile:
Ordner := OutlookApp.Session.Folders.Item('Öffentliche Ordner')

rollstuhlfahrer 6. Apr 2011 11:38

AW: Exchange Anbindung
 
Ist deine Ordnerhierarchie richtig? - Oder hast du zwischendrin oder am Ende einen nicht-existenten Ordner erwischt (ala "<Name des Ordners>")?

Bernhard

franktron 6. Apr 2011 11:42

AW: Exchange Anbindung
 
Zitat:

Zitat von Jambs (Beitrag 1093360)
Ich werde es jetzt mal versuchen.

Gibt es aber auch eine Möglichkeit ohne Outlook?

Nimm doch IMAP das kann der Exchange auch und ist mit Indy kein Problem.

Jambs 6. Apr 2011 12:12

AW: Exchange Anbindung
 
Zitat:

Zitat von rollstuhlfahrer (Beitrag 1093387)
Ist deine Ordnerhierarchie richtig? - Oder hast du zwischendrin oder am Ende einen nicht-existenten Ordner erwischt (ala "<Name des Ordners>")?

Bernhard

ich denke schon das die Ordnerhierarchie richtig ist.

Delphi-Quellcode:
Ordner := OutlookApp.Session.Folders.Item('Öffentliche Ordner')
                              .Folders.Item('Alle Öffentlichen Ordner')
                              .Folders.Item('ZMI_Eingang');


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:22 Uhr.
Seite 1 von 2  1 2      

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