名前 題名 ▼ ヒマジン(John Lemmon)さん > ▼ たてぐやさん > > エラーが出るのは以下のコードです。 > > > > AssignFile(LogF,Fname); > > if FileExists(Fname) then begin //(1) > > Reset(LogF); //(2) > > for i :=0 to FileSize(LogF) - 1 do begin > > Read(LogF,Mess); > > if (Mess.From = f) and (Mess.Subject = s) and (Mess.Head = h) > > and (Mess.MesID = M) and (Mess.RcvHead = r) then begin > > Result := true; > > end; > > end; > > CloseFile(LogF); > > end; > > > > (1)の所でファイルがあることを確認してから(2)でオープンしているのですが、 > > エラーになるケースがあります。 > > ヒマだったので、D4で試してみましたが、複数の添付ファイルがある場合でも > そのようなエラーは発生しません。 > タイマーではなく、ボタンのクリックでその関数を呼んだ場合でもエラーが > 確実に発生するような最小限のコードと条件を提示してください。 > > > > …この関数を呼び出す前にこんなコードがあります。 > > > > NMPOP31.GetMailMessage(i); > > Mess.From := NMPOP31.MailMessage.From; > > Mess.Subject := PzConv1.MIMEHeaderDecode(NMPOP31.MailMessage.Subject); > > Mess.Printed := '0'; > > Mess.Head := DecodeDateTime(NMPOP31.Mailmessage.Head); > > Mess.Atached := NMPOP31.MailMessage.Attachments.CommaText; > > > > また、既読判定の関数を呼ぶ前に GetMailMessage(i);の代わりに GetSummary(i);を使ってみたらどうなりますか? > そうした場合でもエラーが出ますか? GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link