AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Trotz Exception programm weiterlaufen lassen
Thema durchsuchen
Ansicht
Themen-Optionen

Trotz Exception programm weiterlaufen lassen

Ein Thema von SyntaxXx · begonnen am 9. Mär 2012 · letzter Beitrag vom 9. Mär 2012
Antwort Antwort
SyntaxXx

Registriert seit: 14. Dez 2008
328 Beiträge
 
Delphi XE4 Architect
 
#1

Trotz Exception programm weiterlaufen lassen

  Alt 9. Mär 2012, 17:52
Nabend Leute,

und zwar habe ich eine kleine Frage.
Wie kann ich es erreichen, dass mein Tool trotz exception weiter läuft.

Ich habe folgendes vor:
Ich möchte von einer Seite verschiedene Quelltexte laden.
Sprich die URL ist wie folgt aufgebaut = www.seite.de/threadid=

Und jetzt möchte ich mit einer Schleife einfach an threadid=i setzen.
Also das i immer um 1 erhöht wird.

Jetzt ist nur die Sache, dass ich eine Fehlermeldung bekomme, wenn es eine ID nicht gibt.
Wie kann ich das nun am besten machen, dass wenn eine exception auftritt, einfach i um 1 erhöht werden soll und das programm weiter macht?

Geht das überhaupt?
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: Trotz Exception programm weiterlaufen lassen

  Alt 9. Mär 2012, 18:00
Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
var
 i,z,e:Integer;
begin
z := 0;
for I := 1 to 100 do
  begin
      Memo1.Lines.Add(IntToStr(i));
     try
      e := i div z;
     except
       ON E:Exception do Memo2.Lines.Add(E.Message);
     end;
  end;
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: Trotz Exception programm weiterlaufen lassen

  Alt 9. Mär 2012, 18:09
Zwei Punkte. Punkt 1:
Delphi-Quellcode:
 try
   //
 except
   //
 end;
Was du zwischen Except und End machst, also reagierst oder eine Kommentarzeile einfügst, bleibt deine Sache. Mit Except fängst du die Fehlermeldung ab, aber, nun Punkt 2:

In der IDE kommt sie dennoch vor, es seiden du schaltest es ab, d. h. trotz Except kommt die Meldung. Im späteren Programm nicht.
  Mit Zitat antworten Zitat
SyntaxXx

Registriert seit: 14. Dez 2008
328 Beiträge
 
Delphi XE4 Architect
 
#4

AW: Trotz Exception programm weiterlaufen lassen

  Alt 9. Mär 2012, 18:34
Ich glaube ich habe mich ein wenig falsch ausgedrückt oder ich verstehe es nicht xD

Also, wie ich Exceptions abfange ist mir bewußt xD
Aber sobald die Exception auftritt, bricht das Tool ja ab und führt das aus, was ich im Falle einer Exception eben gesagt habe.
Ich möchte mir aber jetzt nicht die Meldung ausgeben lassen, sondern einfach nur, dass z.B. i um 1 erhöht wird und die Schleife weiter macht.

In dem von Bummi aufgeführtem Code, wird ja jetzt nur die Exception agefangen und das Tool bricht die Berechnung ab.
Ich möchte aber, dass enfach nur mein Zähler i geändert wird aber trotzdem alles weiter macht.

Könnte ich nicht einfach das Auslesen des Quelltextes in eine Funkion schreiben, und im Falle einer Exception wird i ein neuer Wert zugewiesen und die Funktion neu aufgerufen?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#5

AW: Trotz Exception programm weiterlaufen lassen

  Alt 9. Mär 2012, 18:55
Man könnte so etwas ja auch einmal ausprobieren. Es ist zwar im Allgemeinen kein guter Stil, einen except-Block leer zu lassen, aber versuch mal
Delphi-Quellcode:
for i := 1 to 100 do
  begin
    URL := Format('http://www.seite.de/threadid=%d', [i]);
    try
      OpenURL;
    except
    end;
  end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: Trotz Exception programm weiterlaufen lassen

  Alt 9. Mär 2012, 19:21
Ich glaube ich habe mich ein wenig falsch ausgedrückt ...
Also eigentlich meine ich dich richtig verstanden zu haben. Ich hab ja geschrieben, dass das was du zwischen Except und End machst, deine Sache bleibt. Du mußt nicht auf die Meldung reagieren.

Aber der eigentliche Punkt ist eher der Punkt 2. Der besagt, dass du dir bewußt sein solltest, dass trotz eines leeren Except Blocks, es in der IDE wohl eine Meldung gibt. Wenn du keine Meldung willst, dann schalte die in der IDE ab oder führe das Programm direkt aus.
  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 21:38 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