AGB  ·  Datenschutz  ·  Impressum  







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

IOResult stimmt nach WriteLn nicht!

Ein Thema von Andidreas · begonnen am 27. Dez 2006 · letzter Beitrag vom 3. Apr 2007
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#11

Re: IOResult stimmt nach WriteLn nicht!

  Alt 27. Dez 2006, 17:15
@hansa

warum ist der {$I-} block zu gross???
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#12

Re: IOResult stimmt nach WriteLn nicht!

  Alt 27. Dez 2006, 17:30
Du unterdrückst Fehlermeldungen in ca. 20 Zeilen. Lediglich in einer wird überhaupt auf ioresult geprüft. Überhaupt relevant sind nur ca. 2-3. Siehe Luckies Beispiel. So macht man das normalerweise. Denn : geht das rewrite gut, dann wird es mit writeln, Closefile usw. auch gut gehen, zumindest in 99,9999 % der Fälle. Falls das rewrite schon nicht geht, dann kann man auf den Rest solange verzichten, bis der Fehler beseitigt ist. Sonderfall wäre folgender (habe ich noch niemals irgendwo gesehen) : rewrite geht gut und anschließendes writeln oder Closefile nicht. In solchen Fällen MUSS eine Fehlermeldung kommen. Fehler wegzaubern, das nützt nichts.

P.S.: sehe gerade, Luckie hat den Compilerschalter {$I+} usw. zum Kommentar {I+} gemacht. Nicht, dass sich das noch einer 1:1 rauskopiert.

P.S.2 : Mittlerweile gesehen, dass die Datei in keiner Weise geöffnet wurde ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#13

Re: IOResult stimmt nach WriteLn nicht!

  Alt 27. Dez 2006, 17:58
@hansa

hmm ok des leuchtet ein

Zitat von Hansa:
P.S.2 : Mittlerweile gesehen, dass die Datei in keiner Weise geöffnet wurde ?
meinst du mein code bsp. damit was ich gepostet hab???
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#14

Re: IOResult stimmt nach WriteLn nicht!

  Alt 27. Dez 2006, 18:12
Ne, ist schon richtig so. Habe das Append übersehen.
Gruß
Hansa
  Mit Zitat antworten Zitat
amigage

Registriert seit: 11. Nov 2005
Ort: Leipzig
270 Beiträge
 
Delphi 11 Alexandria
 
#15

Re: IOResult stimmt unter Vista nicht!?

  Alt 3. Apr 2007, 17:52
Kann es sein, dass diese Variante nicht unter Windows Vista funktioniert?
Speziell interessiert mich die Abfrage, ob z.B. in den Programmeordner geschrieben werden kann.

Hier einmal die Kurzvariante zum Testen:

Delphi-Quellcode:
var
  F : TextFile;
  tmp : integer;
begin
    try
        AssignFile(F, Ordner + Dateiname);
{$I-}
        ReWrite(F);
{$I+}
        tmp := ioresult;
        if tmp = 0 then
        begin // erfolgreich
          showmessage('ioresult='+inttostr(tmp));
          Result := true;
          CloseFile(F);
        end
        else
        begin // nicht erfolgreich
          showmessage('peng! ioresult='+inttostr(tmp));
          Showmessage('In den angegebenen Ordner kann nicht geschrieben werden!');
          Result := false;
        end;
    finally
      If FileExists(Ordner + Dateiname) then
         DeleteFile(Ordner + Dateiname);
    end;
end;
Bei den gewohnten Verzeichnissen, wie CD-Laufwerke, nicht beschreibbare Medien funktioniert es. Nur nicht unter Vista, wenn man als Nicht-Admin versucht ins Programmverzeichnis zu schreiben. Die angegebene Datei ist vor dem CloseFile() auch nicht vorhanden, obwohl ioresult=0 zurück gegeben wurde...

Ich verzweifle schon fast...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 19:18 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