Einzelnen Beitrag anzeigen

benjaminradde

Registriert seit: 6. Feb 2014
3 Beiträge
 
#1

IdPOP3 Error in Retrieve bei Android

  Alt 6. Feb 2014, 14:07
Hallo!

Ich möchte in einer Android-APP mit Hilfe des IDPOP3-Clients Mails herunterladen. Lässt man die APP unter Win32 laufen ist alles gut. Im Android steigt er bei:

IdPOP3.Retrieve(i, Mail);

mit der Exception:

...Klasse EFCreateError mit der Meldung 'Datei "/Indy72C59D5A" kann nicht erstellt werden. Not a directory' aufgetreten.

aus.

Verfolgt man es weiter landet man in der Unit System.Classes bei TFileStream.Create

Es fliegt die Exception, siehe unten fett markiert. Bei FileOpen ird ja unten der Unterschied gemacht. Ich nehme an, bei FileCreate sollte dies wohl auch sein.

Jemand eine Idee?

constructor TFileStream.Create(const AFileName: string; Mode: Word; Rights: Cardinal);
var
LShareMode: Word;
begin
if (Mode and fmCreate = fmCreate) then
begin
LShareMode := Mode and $FF;
if LShareMode = $FF then
LShareMode := fmShareExclusive; // For compat in case $FFFF passed as Mode
inherited Create(FileCreate(AFileName, LShareMode, Rights));
if FHandle = INVALID_HANDLE_VALUE then
raise EFCreateError.CreateResFmt(@SFCreateErrorEx, [ExpandFileName(AFileName), SysErrorMessage(GetLastError)]);
end
else
begin
{$IFDEF MSWINDOWS}
inherited Create(FileOpen(AFileName, Mode or Rights));
{$ELSE !MSWINDOWS}

inherited Create(FileOpen(AFileName, Mode));
{$ENDIF MSWINDOWS}
if FHandle = INVALID_HANDLE_VALUE then
raise EFOpenError.CreateResFmt(@SFOpenErrorEx, [ExpandFileName(AFileName), SysErrorMessage(GetLastError)]);

end;
FFileName := AFileName;
end;
  Mit Zitat antworten Zitat