![]() |
Re: PersoGen
Auf die Gefahr hin, dass ich mich unbeliebt mach: Ich hab anscheinend eine ungültige ID auf meinem Perso :mrgreen:
Hab die ID genau so abgetippt, wie sie auf meinem Ausweis draufsteht, aber er sagt mir, dass die ID ungültig ist :shock: |
Re: PersoGen
Zitat:
... ich hab die grünen schon informiert! :mrgreen: :mrgreen: |
Re: PersoGen
Zitat:
|
Re: PersoGen
Zitat:
|
Re: PersoGen
bei mir ebenfalls ungültig... :?
|
Re: PersoGen
Dein Exception-Handling ist unsauber/fehlerhaft!
Delphi-Quellcode:
Wenn nun an der Stelle, die mit *** gekennzeichnet wurde eine Exception auftritt ??
function IsValidID(ID: string): boolean;
begin try Row1 := ..... ..... // *** if not ((Ps1 = StrToInt(ID[10])) and (Ps2 = StrToInt(ID[20])) and (Ps3 = StrToInt(ID[28])) and (Ps4 = StrToInt(ID[36]))) then result := false else result := true; except exit end; end; Du wirst niemals erfahren, was schiefgelaufen ist und ausserdem ein undefiniertes Result erhalten. Korrektes Exception-Handling sieht so aus:
Delphi-Quellcode:
Der Aufrufer, bekommt eine recht genaue Beschreibung, was schiefgelaufen ist.
function IsValidID(ID: string): boolean;
begin try Row1 := ..... ..... // *** if not ((Ps1 = StrToInt(ID[10])) and (Ps2 = StrToInt(ID[20])) and (Ps3 = StrToInt(ID[28])) and (Ps4 = StrToInt(ID[36]))) then result := false else result := true; except on E:Exception do begin E.Message := 'Fehler in IsValidID('+ID+')'#13#10+ E.Message; raise; end; end; end; Die Exception wird nur abgefangen und erneut ausgelöst. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz