Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用indy 10和delphi 7以及文件附件接收电子邮件?_Delphi_Indy10 - Fatal编程技术网

如何使用indy 10和delphi 7以及文件附件接收电子邮件?

如何使用indy 10和delphi 7以及文件附件接收电子邮件?,delphi,indy10,Delphi,Indy10,如何使用indy 10和delphi 7以及文件附件接收电子邮件?附件作为TIdAttachment对象存储在TIdMessage.MessageParts集合中。这是使用indy 10的代码。”“文件”是一个stringlist,其中包含已下载的附件列表-我对附件感兴趣,而不是信件本身 with IdPop31 do begin ConnectTimeout := 5000; Connect; try files.Clear; for i := 1 to check

如何使用indy 10和delphi 7以及文件附件接收电子邮件?

附件作为
TIdAttachment
对象存储在
TIdMessage.MessageParts
集合中。

这是使用indy 10的代码。”“文件”是一个stringlist,其中包含已下载的附件列表-我对附件感兴趣,而不是信件本身

with IdPop31 do
begin
  ConnectTimeout := 5000;
  Connect;
  try
    files.Clear;
    for i := 1 to checkmessages do
    begin
      msg.clear;
      flag := false;
      if retrieve (i, msg) then
      begin
        for j := 0 to msg.MessageParts.Count-1 do
        begin
          if msg.MessageParts[j] is TIdAttachment then
          begin
            with TIdAttachment(msg.MessageParts[j]) do
            begin
              s := IncludeTrailingPathDelimiter(mydir) + ExtractFileName(FileName);
              log ('Downloaded ' + s);
              if not FileExists(s) then
              begin
                SaveToFile(s);
                files.Add(s);
              end;
             end;
            end;
            flag := true;
          end;
        end;
      end;
      if flag then Delete(i);  // remove the email from the server
    end;
  finally
    Disconnect;
  end
end;

您的代码运行良好,但需要在“开始-结束”部分进行更正,其中“s”是定义的。如果“FileName”为空,则程序必须跳过保存。也许你剪了这条线,“结束”就挂了

请你提供完整的代码,我可以在那里得到邮件和附件文件,或者任何工作或测试的例子,这将是真正有帮助的提前感谢。卡皮尔-这里的人希望你尝试一些东西,然后告诉我们你在哪里卡住了。我觉得你很懒。你是否正在使用Indy组件阅读POP3服务器上的电子邮件,并且在阅读附件时遇到问题?我在问,否则一个完全有效的答案是“印地与此无关,请某人给你发电子邮件”。如果是,到目前为止你做了什么?编辑您的问题并显示一些代码。