tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
20
ZUGRIFFE
1843
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    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! Danke
     
    MFG SeeSharpNewBee

  2. #2
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    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, cosmo
     
    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...

  3. #3
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    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

  4. #4
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Zitat Zitat von SeeSharpNewBee
    Fehler weitergeben kann ich mit "throw" oder?
    Ja genau, so kannst Du unchecked Exceptions werfen/weitergeben.

    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...

  5. #5
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    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

  6. #6
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    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.
     

  7. #7
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    Registriert seit
    Sep 2004
    Beiträge
    200
    Danke, den werd ich haben!
     
    MFG SeeSharpNewBee

  8. #8
    kahuna kahuna ist offline Mitglied Gold
    Registriert seit
    Jul 2003
    Beiträge
    154
    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
     

  9. #9
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    Registriert seit
    Sep 2004
    Beiträge
    200
    Gibt es irgendwo eine auflistung aller möglichen fehler?
     
    MFG SeeSharpNewBee

  10. #10
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Nobert meinte das sichlich Ironisch und hat auch das wiederholt was ich anfangs vorgeschlagen hab.
    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.
    Hier ein Thread zu Thema.
     
    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...

  11. #11
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    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

  12. #12
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    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, cosmo
    Geä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...

  13. #13
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    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*
     

  14. #14
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Mist hab mich verzettelt. Das anwendunsbeispiel sollte so aussehen:
    Code :
    1
    2
    3
    4
    5
    
    try{
        throw new UnauthorizedAccessException();
    }catch ( Exception ex ) {
        MessageBox.Show( new MyErrorExceptions( 24, "C# Exception Test", ex ).ToString() );
    }
    Wen das jetzt nicht OOP ist, hab ich das Thema überhaupt gar nicht verstanden.
     
    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...

  15. #15
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    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

  1. Photoshop CS (8) Fehlernummer: 0x80040705
    Von Martinator im Forum Photoshop
    Antworten: 19
    Letzter Beitrag: 21.02.07, 15:38
  2. Unbekannte Fehlernummer
    Von Pageman2 im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 26.10.06, 10:32
  3. Fehlernummer 13
    Von time-master im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 25.05.05, 13:08