Ich habe es gefunden... (Wenn ich schon gefragt habe, dann abschliessend mit
L�sung... )

Hier ein kleines Beispiel zum Verst�ndnis:

Eine Solution hat 2 Projects: ErrCli und ErrSrv. In dem Projekt ErrCli
befindet sich ein Fenster das zwei Buttons besitzt. Ein Button verursacht
einen Fehler innerhalb des Projektes, der zweite instanziiert eine Klasse
aus ErrSrv, wobei diese ebenfalls einen Fehler verursacht. Ziel ist es beide
Fehler getrennt verzeichnet zu haben, sodass ich nachvollziehen kann, welche
Fehler in welchem Projekt verursacht worden sind. (ErrCli schreibt z.B. in
ErrCli.TXT und ErrSrv in ErrSrv.TXT UND in ErrCli.TXT). 

Und warum?

In gr��eren Projekten kann das Problem bestehen, dass nicht behandelte
Fehler nur schwer nachvollziehbar sind. Dieser Fehler k�nnen hiermit gut
nachvollzogen werden. (Sicherlich sollten die Fehler aber in XML gespeichert
werden, aber das ist nur ein Beispiel...)

Realisierung:

ErrSrv sieht so aus:
--------------------ErrSrv-------------------------------------
using System;
using System.IO;

namespace ErrSrv1
{
        /// <summary>
        /// Summary description for Class1.
        /// </summary>
        public class Class1
        {
                public Class1()
                {
                                AppDomain.CurrentDomain.UnhandledException
+= 
                                new
UnhandledExceptionEventHandler(MyException);
                }
                private void MyException(object sender,
UnhandledExceptionEventArgs e)
                {
                        Exception ex = (Exception) e.ExceptionObject;

                        FileInfo fi = new FileInfo("c:\\ErrorSrv.txt");
                        StreamWriter stw =fi.CreateText();
                        stw.WriteLine(ex);
                        stw.Write(stw.NewLine);
                        stw.Close();
                }
                public void ErrorNow()
                {
                        throw new Exception("Error on ErrSrv");
                }
        }
}
----------------------------------------------------------------
ErrCli ist ein WinForm un sieht so aus (nur der relevante Code...):
-------------ErrCli---------------------------------------------
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using ErrSrv1;

namespace ErrCli
{
        public class Form1 : System.Windows.Forms.Form
        {
                public Form1()
                {
                        InitializeComponent();
                        AppDomain.CurrentDomain.UnhandledException += 
                                new
UnhandledExceptionEventHandler(MyException);
                }


                private void button1_Click(object sender, System.EventArgs
e)
                {
                                ErrorNow();
                }
                private void MyException(object sender,
UnhandledExceptionEventArgs e)
                {
                        Exception ex = (Exception) e.ExceptionObject;

                        FileInfo fi = new FileInfo("c:\\ErrorCli.txt");
                        StreamWriter stw =fi.CreateText();
                        stw.WriteLine(ex);
                        stw.Write(stw.NewLine);
                        stw.Close();
                }
                public void ErrorNow()
                {
                        throw new Exception("Error on ErrCli");
                }

                private void button2_Click(object sender, System.EventArgs
e)
                {

                        Class1 o = new Class1();
                                o.ErrorNow();
                }
        }
}
-----------------------------------------------------------------------










-----Message d'origine-----
De : [EMAIL PROTECTED]
[mailto:Florian.Dittgen@;masterline.fr]
Envoy� : lundi 4 novembre 2002 10:45
� : C Sharp
Objet : [dotnetdecsharp] Re: Fehler einem Assembley zuordnen...


Vielen Dank, aber leider hilft mir dies nicht wirklich weiter. Ich moechte
z.B., dass eine "BusinessRules.dll" ihre Fehler in eine
"BusinessRules.Errors.log" speichert. D.h., dasss das Exception handling auf
der Ebene des Assembleys den Fehler protokoliert. (leider hatte ich das
Problem vorher nicht richtig beschrieben)

Florian


-----Message d'origine-----
De : Norbert Fetscher [mailto:NFetscher@;gmx.de]
Envoy� : lundi 4 novembre 2002 10:07
� : C Sharp
Objet : [dotnetdecsharp] Re: Fehler einem Assembley zuordnen...


Mit System.Reflection.Assembly.GetExecutingAssembly() bekommt man ein
Assembly-Objekt, das Informationen �ber das Assembly, welches gerade
ausgef�hrt wird, bietet

Norbert

----- Original Message -----
From: <[EMAIL PROTECTED]>
To: "C Sharp" <[EMAIL PROTECTED]>
Sent: Monday, November 04, 2002 9:30 AM
Subject: [dotnetdecsharp] Fehler einem Assembley zuordnen...


Wie ist es m�glich einen, innerhalb eines Assembleys, aufgetretenen Fehler
auch diesem zuzuordnen. Wenn ich ein Assembley in ein Projekt integriere,
m�chte ich dass die Fehler, die in diesem auftreten, protokoliert werden,
und diesem zugeordnet werden k�nnen. (Dieses sollte aber ohne Konstanten
geschehen)

Florian

| [dotnetdecsharp] als [EMAIL PROTECTED] subscribed
| http://www.dotnetgerman.com/archiv/dotnetdecsharp/ = Listenarchiv
| Listenregeln, sowie An- und Abmeldung zu dieser Liste:
| http://www.dotnetgerman.com/listen/dotnetdecsharp.asp





| [dotnetdecsharp] als [EMAIL PROTECTED] subscribed
| http://www.dotnetgerman.com/archiv/dotnetdecsharp/ = Listenarchiv
| Listenregeln, sowie An- und Abmeldung zu dieser Liste:
| http://www.dotnetgerman.com/listen/dotnetdecsharp.asp

| [dotnetdecsharp] als [EMAIL PROTECTED] subscribed
| http://www.dotnetgerman.com/archiv/dotnetdecsharp/ = Listenarchiv
| Listenregeln, sowie An- und Abmeldung zu dieser Liste:
| http://www.dotnetgerman.com/listen/dotnetdecsharp.asp

| [dotnetdecsharp] als [email protected] subscribed
| http://www.dotnetgerman.com/archiv/dotnetdecsharp/ = Listenarchiv
| Listenregeln, sowie An- und Abmeldung zu dieser Liste:
| http://www.dotnetgerman.com/listen/dotnetdecsharp.asp

Antwort per Email an