掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイル化したメールを表示するには? (ID:1882)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
と言うことはexcept分岐の部分には何も記述しなくて良いのですね? それとMemoryStreamにもファイル名をつけなくてはならないのでしょうか? それと比較はこんな感じに行ってOKなのでしょうか? // ループ内で行う? if SaveUidl[No] not NowUidl[No] then begin // メールを取り込みnmlファイルに保存する処理 // 順番にヘッダの内容を読み、ListView に追加 GetMem(Header, HEADER_MAX); NMailPop3GetMailStatus(S, Count, Subject, Date, From, Header, False); strDate := StrPas(Date); DataName := 'NML' + Copy(strDate, 1, 4) // yyyy + Copy(strDate, 6, 2) // mm + Copy(strDate, 9, 2) // dd + Copy(strDate, 12, 2) // hh + Copy(strDate, 15, 2) // mm + Copy(strDate, 18, 2); // ss Seq := 0; while FileExists(RcvFolder + 'RcvMail\' + DataName + '_' + IntToStr(Seq) + '.nml') do Inc(Seq); try BodySize := NMailPop3GetMailSize(S, Count); GetMem(Body, BodySize); NMailPop3GetMail(S, Count, Subject, Date, From, Header, Body, nil, nil); Fs := TFileStream.Create(RcvFolder + 'RcvMail\' + DataName + '_' + IntToStr(Seq) + '.nml', fmCreate); Fs.WriteBuffer(Header^, StrLen(Header)); Fs.WriteBuffer(#13#10, StrLen(#13#10)); Fs.WriteBuffer(Body^, StrLen(Body)); finally I := MailListView.Items.Add; I.Caption := StrPas(Subject); I.SubItems.Add(StrPas(Date)); I.SubItems.Add(StrPas(From)); if DeleteFlag = False then NMailPop3DeleteMail(S, No); if Fs <> nil then Fs.Free; if Body <> nil then FreeMem(Body); end else begin I := MailListView.Items.Add; I.Caption := StrPas(Subject); I.SubItems.Add(StrPas(Date)); I.SubItems.Add(StrPas(From)); end; // UIDLの再保存?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.