AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

IOResult funktioniert nicht korrekt

Ein Thema von wespi · begonnen am 10. Feb 2005 · letzter Beitrag vom 11. Feb 2005
Antwort Antwort
Seite 3 von 3     123   
d-a2005
(Gast)

n/a Beiträge
 
#21

Re: IOResult funktioniert nicht korrekt

  Alt 11. Feb 2005, 08:56
Unter TP gabs mal FileMode, damit konnte man angeben, ob eine Datei nur zum Lesen, zum Schreiben oder für beides geöffnet werden soll.

Werte für FileMode waren 0,1, und 2, soweit ich weiß.

Vielleicht hilft dir das.
  Mit Zitat antworten Zitat
d-a2005
(Gast)

n/a Beiträge
 
#22

Re: IOResult funktioniert nicht korrekt

  Alt 11. Feb 2005, 10:06
Ach ja, muß es nicht überhaupt so heißen:

1 {$I-}
2 assign(f,'fehler.rec');
3 reset(f);
4 {$I+}
5 ioerror := (IOResult = 0);


also erst {$I+} wieder einschalten?
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#23

Re: IOResult funktioniert nicht korrekt

  Alt 11. Feb 2005, 10:10
Zitat von d-a2005:
Ach ja, muß es nicht überhaupt so heißen:

1 {$I-}
2 assign(f,'fehler.rec');
3 reset(f);
4 {$I+}
5 ioerror := (IOResult = 0);


also erst {$I+} wieder einschalten?
das hab ich mir auch schon gedacht, und in der Delphi-OH ist es auch so drin:
Delphi-Quellcode:
var
  F: file of Byte;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(F, OpenDialog1.FileName);
    {$I-}
    Reset(F);
    {$I+}
    if IOResult = 0 then
    begin
      MessageDlg('File size in bytes: ' + IntToStr(FileSize(F)),
        mtInformation, [mbOk], 0);
      CloseFile(F);
    end
    else
      MessageDlg('File access error', mtWarning, [mbOk], 0);
  end;
end;
AFAIR war das auch schon bei TP7 so, dass vor dem Abfragen von IOResult erstmal {$I+} ausgeführt werden mussste...

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 4. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#24

Re: IOResult funktioniert nicht korrekt

  Alt 11. Feb 2005, 10:33
Hallo wespi,

Dein Fehler ist kaum nachvollziehbar (siehe Luckis Beitrag).

Hier nochmal der Standardaufbau, den ich dann jeweils bei Bedarf anpasse.

Delphi-Quellcode:
uses
  System;

var
  ioerr : integer;

begin
    {$I-}
    AssignFile(f, lw_path_und_filename);
    Reset(f); // für Lesen oder
    Append(f); // für Anhängen
    if IOResult <> 0 then begin // Fehler beim Öffnen
      Rewrite(f);
      ioerr := IOResult;
      if ioerr <> 0 then begin
        ShowMessage('Datei konnte nicht angelegt werden' + chr($0A)+chr($0D) +
                    'Fehler-Nummer: ' + IntToStr(ioerr));
        exit;
      end;
    end;
    Append(f);
    Writeln(f, 'irgendwas');
    Flush(f); // Sicherstellen, daß der Text tatsächlich in die Datei geschrieben wird.
    CloseFile(f);
    {$I+}
end;
{$I-} bzw. {$I+} muß nicht ständig umgeswitcht werden.

Wegen so einem Fehler wieder auf TP umsteigen, ich würd's mir noch mal überlegen. Es gibt nunmal gelegentlich Fehler, wo man einen halben Tag sucht, nur um festzustellen, daß die Logik von Delphi nicht kompatibel ist mit der Logik des Programmierers.

Zum Glück sind die meisten Programmierer lernfähig!!

mfg
eddy
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 01:00 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