ERLEDIGT
NEIN
NEIN
ANTWORTEN
20
20
ZUGRIFFE
1843
1843
EMPFEHLEN
-
19.07.05 16:23 #1
- Registriert seit
- Sep 2004
- Beiträge
- 200
Hi,
wie kann man von einer exception die nummer feststellen? Damit ich auf bestimmte fehler anders reagieren kann, und das für den anwender auch einfach ist wenn meine auswertungen der fehler in einer messagebox auftauchen als irgendwas kryptisches von microsoft! DankeMFG SeeSharpNewBee
-
Hallo SeeSharpNewBee!
Schön das Du dir darüber gedanken machst.
Wer kann schon was mit einer Checked Exception anfangen.
Bau Dir doch eigene Exception-Klassen die Du von Exception ableitest
und mit den Parametern versiehst, die für die Ausnahmebehandlung notwendig sind.
Desweiteren würde ich Dir intern extra noch ErrorCodes empfehlen.
Diese könntest Du verwenden, um die entspechenden Fehlermeldungen in der
gewünschten Sprache auszugeben die Du in deinen Ressources hinterlegt hast.
MfG, cosmoMfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
19.07.05 18:02 #3
- Registriert seit
- Sep 2004
- Beiträge
- 200
Ok, dann werd ich mal froh zu werk gehen, fehler weitergeben kann ich mit "throw" oder?
MFG SeeSharpNewBee
-
Ja genau, so kannst Du unchecked Exceptions werfen/weitergeben.
Zitat von SeeSharpNewBee
Schau mal auf TheCodeProject nach. Die haben einiges an Techniken zu bieten.
MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
19.07.05 19:33 #5
- Registriert seit
- Sep 2004
- Beiträge
- 200
Ich hab mir jetzt was anderes überlegt, ich lege eine textdatei an, und wenn ein erwarteter fehler, jedenfalls von mir erwartet entsteht, dann durchsuche ich die datei nach der message, die der fehler zurückgibt, finde ich diesen fehler, wird die nummer aus der datei als rückgabewert verwendet, und diese nummer kann ich dann verwenden!
Falls es eine elegantere möglichkeit gibt, immer her damit!
EDIT: Gibt es irgendwo eine quelle, wo alle fehler, die auftreten könnten, aufgelistet sind? Danke
EDIT: Falls mein vorhaben funktioniert, könnte ich eigentlich die "Err.Number" funktion aus VB nachbauen!Geändert von SeeSharpNewBee (19.07.05 um 19:59 Uhr)
MFG SeeSharpNewBee
-
Bau dir deine eigenen Exceptions, dann hast wesentlihc weniger Aufwand. Wenn du jetzt _JEDE_ Fehlernummer abfangen willst, dann wünsch ich dir schon mal jetzt viel Spaß beim wochenlangen programmieren.
-
19.07.05 23:18 #7
- Registriert seit
- Sep 2004
- Beiträge
- 200
Danke, den werd ich haben!
MFG SeeSharpNewBee
-
OK, nur was kleines am Rande:
Du solltest in jedem Fall vermeiden Exceptions per throw weiter zu werfen. Exceptions kosten nur solange keine Performance, bis man sie wirft. Dabei wird ein Stack walk durchgeführt und dieser kostet dich Performance en masse.
Versuch also throw soweit wie möglich zu vermeiden.
Gruss Alexander
-
20.07.05 12:30 #9
- Registriert seit
- Sep 2004
- Beiträge
- 200
Gibt es irgendwo eine auflistung aller möglichen fehler?
MFG SeeSharpNewBee
-
Nobert meinte das sichlich Ironisch und hat auch das wiederholt was ich anfangs vorgeschlagen hab.
Hier ein Thread zu Thema.Bau Dir doch eigene Exception-Klassen die Du von Exception ableitest
und mit den Parametern versiehst, die für die Ausnahmebehandlung notwendig sind.
Desweiteren würde ich Dir intern extra noch ErrorCodes empfehlen.
Diese könntest Du verwenden, um die entspechenden Fehlermeldungen in der
gewünschten Sprache auszugeben die Du in deinen Ressources hinterlegt hast.MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
20.07.05 13:46 #11
- Registriert seit
- Sep 2004
- Beiträge
- 200
Ich hab das jetzt so gelöst! (siehe code)
Code :1 2 3 4 5 6 7 8 9 10 11 12
namespace MyErrorHandl { public class MyErrorExceptions { public int ErrNumber(Exception ex) { if(ex is UnauthorizedAccessException) return 1; //Hier ergänzungen hinzufügen, sollten die 99 nicht reichen kann man das ändern return 99; } } }MFG SeeSharpNewBee
-
Ok, sieht schon gut aus.
Aber es treten doch bestimmt nicht immer UnauthorizedAccessExceptions an der gleichen stelle auf.
// Edit: Beispiel war Falsch, steht jetzt im 16. Post.
MfG, cosmoGeändert von Christian Kusmanow (20.07.05 um 16:27 Uhr)
MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
OMG.
Gewöhn dir einfach an mit Exceptions zu arbeiten und vergiss es einfach, da schmutzige Dinge aus der alten Welt nachzubauen. Das hat doch mit OOP nix zu tun. *graus*
-
Mist hab mich verzettelt. Das anwendunsbeispiel sollte so aussehen:
Wen das jetzt nicht OOP ist, hab ich das Thema überhaupt gar nicht verstanden.Code :1 2 3 4 5
try{ throw new UnauthorizedAccessException(); }catch ( Exception ex ) { MessageBox.Show( new MyErrorExceptions( 24, "C# Exception Test", ex ).ToString() ); }MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
Nein, würd ich so auch nicht machen.
Schau, eigene Exceptions zahlen sich nur aus, wenn man Exceptions in eigene Klassen einbaut. In einem catch eine neue Exception zu instanzieren bringt Overhead wo keiner sein müsste.
Ähnliche Themen
-
Photoshop CS (8) Fehlernummer: 0x80040705
Von Martinator im Forum PhotoshopAntworten: 19Letzter Beitrag: 21.02.07, 15:38 -
Unbekannte Fehlernummer
Von Pageman2 im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 26.10.06, 10:32 -
Fehlernummer 13
Von time-master im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 25.05.05, 13:08





Zitieren
Login





