AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Jpeg.LoadFromFile(). Bei ungültigen Bildern Fehler abfangen?
Thema durchsuchen
Ansicht
Themen-Optionen

Jpeg.LoadFromFile(). Bei ungültigen Bildern Fehler abfangen?

Ein Thema von formosa · begonnen am 5. Nov 2007 · letzter Beitrag vom 5. Nov 2007
Antwort Antwort
formosa

Registriert seit: 8. Apr 2006
Ort: Shanghai
29 Beiträge
 
Delphi 7 Professional
 
#1

Jpeg.LoadFromFile(). Bei ungültigen Bildern Fehler abfangen?

  Alt 5. Nov 2007, 11:30
Hallo zusammen,

Ich bin gerade dabei mir ein kleines Programm zu schreiben, welches Jpeg's verkleinern kann.
Das ganze läuft bis jetzt recht gut.
Nur habe ich mich gestern gefragt was wohl passieren wird wenn ich eine ungültige Datei einlesen will. Also hab ich einfach ein Word Document in Dateiname.jpg umbennant.

Delphi-Quellcode:
var
  jpeg: TJPEGImage;
begin
  jpeg := TJPEGImage.Create;
  try
    jpeg.LoadFromFile(FName);
  finally
    jpeg.Free;
  end;
end;
Damit unterbricht der Compiler die Programmausführung mit der Fehlermeldung "....Jpeg Error Nr #53..." und das fertig compilierte Programm bricht an der Stelle einfach ab.

Was muss ich tun damit ich eine ungültige Datei erkennen kann und das Programm weiterläuft? Das heisst die restlichen Dateien im Ordner einliest?

Vielen Dank schon im voraus.

Chris
  Mit Zitat antworten Zitat
Benutzerbild von arbu man
arbu man

Registriert seit: 3. Nov 2004
Ort: Krefeld
1.108 Beiträge
 
Delphi 7 Professional
 
#2

Re: Jpeg.LoadFromFile(). Bei ungültigen Bildern Fehler abfan

  Alt 5. Nov 2007, 11:43
Die Struktur zum Fehler abfangen heißt try except.

Delphi-Quellcode:
 try
  Jpeg.LoadFromFile('...');
 except
   on Eception do begin // Exception Name verändern!
     Showmessage('Da lief was falsch...');
   end;
 end;
mfg, Björn
Björn
>> http://bsnx.net <<
Virtual DP Stammtisch v1.0"iw" am 19.09.2007 - ich war dabei!
  Mit Zitat antworten Zitat
soulies

Registriert seit: 9. Dez 2005
234 Beiträge
 
#3

Re: Jpeg.LoadFromFile(). Bei ungültigen Bildern Fehler abfan

  Alt 5. Nov 2007, 13:58
du könntest auch vor zuweisung auf 'jpeg' auf die entsprechende Kennung von JPG Bildern prüfen ...

nur wenn die korrekte kennung [FFD8] vorhanden ist macht dein programm weiter



cya
  Mit Zitat antworten Zitat
formosa

Registriert seit: 8. Apr 2006
Ort: Shanghai
29 Beiträge
 
Delphi 7 Professional
 
#4

Re: Jpeg.LoadFromFile(). Bei ungültigen Bildern Fehler abfan

  Alt 5. Nov 2007, 17:00
So gehts.

Delphi-Quellcode:
try
  Jpeg.LoadFromFile('...');
except
  on EInvalidGraphic do begin
    ShowMessage('Ungueltige Datei');
  end;
  Jpeg.Free;
end;
Auf korrekte Kennung prüfen möchte ich eigentlich nicht, da ich eh die Breiten und Höhen der Jpegs auslese. Wenn dabei auch gleich ungültige Dateien erkennen kann, mach ichs doch im gleichem Gang.

Dank euch beiden,

Chris
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:22 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