AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Indy 10 IMAP Exchange Problem beim Login
Thema durchsuchen
Ansicht
Themen-Optionen

Indy 10 IMAP Exchange Problem beim Login

Ein Thema von stalkingwolf · begonnen am 28. Dez 2016 · letzter Beitrag vom 30. Dez 2016
Antwort Antwort
stalkingwolf

Registriert seit: 6. Mai 2011
518 Beiträge
 
#1

Indy 10 IMAP Exchange Problem beim Login

  Alt 28. Dez 2016, 08:38
Guten Morgen,

ich versuche gerade mit IMAP auf ein Exchange Konto zuzugreifen.
Allerdings erhalte ich dabei den Fehler "Command received in Invalid state."

Nutze ich STARTTLS erhalte ich die Meldung "Verbindung erfolgreich geschlossen". Da es lange dauert, tippe ich auf ein Timeout

Mein Code sieht folgendermassen aus.

Code:
procedure TFmain.connectIMAP;
var ext,newFileName:string;
    MsgAnz,i,j:integer;
    ToDelete : integer;
    Confirmed : array of integer;

    idmessage  : TIdMessage;
    Attachment : TIdAttachment;
begin
    log.Lines.Clear;

    idIMAP.Host     := edFTPHost.text;
    idIMAP.Port     := strtoint(edFTPPort.text);
    idIMAP.Username := edFTPUsername.text;
    idIMAP.Password := edFTPKennwort.text;

    if edFTPPort.text = '993' then begin
        IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvSSLv3;
        idIMAP.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
        idIMAP.AuthType := iatUserPass;
        idIMAP.UseTLS   := utUseImplicitTLS;
    end else begin
        if cbusetlsIMAP.checked then begin

            IdSSLIOHandlerSocketOpenSSL1.MaxLineAction         := maException;
            IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method     := sslvTLSv1;
            IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Mode       := sslmUnassigned;
            IdSSLIOHandlerSocketOpenSSL1.SSLOptions.VerifyMode := [];
            IdSSLIOHandlerSocketOpenSSL1.SSLOptions.VerifyDepth := 0;
            idIMAP.IOHandler := IdSSLIOHandlerSocketOpenSSL1;

            idIMAP.UseTLS   := utUseExplicitTLS;

        end else begin
            idIMAP.UseTLS   := utNoTLSSupport;
            idIMAP.IOHandler := nil;
        end;
    end;

    log.lines.add(format('IMAP Verbinde mit Email Account %s@%s',[edFTPUsername.text,edFTPHost.text]));
    try
        idIMAP.Connect;
    except
        on e:exception do begin
            log.Lines.Add(format('Es ist ein Fehler aufgetreten : "%s"',[e.message]));
            log.lines.add('=====================================');
            exit;
        end;
    end;
.
.
.
.
Ich greife über den Port 143 auf den IMAP Server zu. Bei unserem internen funktioniert dies auch einwandfrei.
Ein Kunde hat aber einen Exchange Server und dort erscheint die oben genannte Meldung.
Laut unserem Kunden kann Exchange kein POP? D.h ich muss per IMAP zugreifen.

Geändert von stalkingwolf (28. Dez 2016 um 09:34 Uhr)
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.610 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Indy 10 IMAP Exchange Problem beim Login

  Alt 28. Dez 2016, 11:45
Ich greife über den Port 143 auf den IMAP Server zu. Bei unserem internen funktioniert dies auch einwandfrei.
Ein Kunde hat aber einen Exchange Server und dort erscheint die oben genannte Meldung.
Laut unserem Kunden kann Exchange kein POP? D.h ich muss per IMAP zugreifen.
Zu deinem SourceCode kann ich dir nichts sagen warum der nicht funktioniert. Zum Exchange Server (allerdings Version 2016 und soweit ich weiß auch 2013 da die identisch sind) kann ich aber sagen, dass die Funktionen IMAP und POP3 zur Verfügung stehen.

Sind bei dem Kunden die Einstellungen auch richtig gesetzt? Welche Version von Exchange benutzt er. IMAP und POP3 müssen im Benutzerpostfach aktiviert werden. Ist zwar eigentlich Standard, aber möglicherweise hat der Admin das ja bewusst deaktiviert.

Ich habe dir mal ein paar Bilder von unserem Exchange Server angehängt (Version 2016). Die Einstellungen zum POP3 und IMAP findest du bei den Servereinstellungen.

Hoffe das hilft dir in der Richtung weiter.

EDIT: Wir greifen bei uns nur über Exchange ActiveSync darauf zu. Ist auch wesentlich komfortabler und kann mehr als IMAP und POP. Weiß nur nicht, ob Indy da auch was zur Verfügung stellt. Wir benutzen das nur übers Smartphone zum Abrufen der Mails und Kontakte. Die Android bzw. iOS App kann das ja von Haus aus.
Miniaturansicht angehängter Grafiken
exchange2016imap4.jpg   exchange2016pop3.jpg   exchange2016postfachfunktionen.png  
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
518 Beiträge
 
#3

AW: Indy 10 IMAP Exchange Problem beim Login

  Alt 30. Dez 2016, 11:07
Danke für die Antwort.
Ich habe unserem Kunden auf die Füsse getreten und dann ging auch auf einmal POP3

Problem scheint das STARTTLS im IMAP Protokoll zu sein. Eigentlich wird das eher bei SMTP genutzt.
Bei nicht EXCHANGE Servern geht es auch ohne Probleme.
  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 22:26 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