| 

.NET C# Java Javascript Exception

1
Hallo,

heute habe ich ein außergwöhnliches Problem. Beim Start meiner Anwendung bekommen ich einen Fehlerbericht von Microsoft angezeigt.(Ihr kennt das ja: Poblembericht senden? Ja/Nein)) Die Anwendung hat bis jetzt ca. 1 Jahr lang wunderbar funktioniert und von heute auf morgen der Fehler. Das Framework ist da, daran kanns also nicht liegen. In der Anwendung Selber wird auch nichts im Konstructor oder dem Form_Load geladen. Hat jemand vielleicht einen heißen Tip?

Gruß

Spicejam

Sorry, der Beitrag ist von mir war nur nicht angemeldet.
News:
21.07.2011
Gast
11 2
Ist bei dem Problembericht oder sonst irgendwo ein Stacktrace mit dabei, mit dem sich die Ursache evtl. eingrenzen läßt?
Matthias Hlawatsch 21.07.2011
Nichts, was sich meiner Meinung nach verwerten liese. Ich könnte morgen den Inhalt des Berichts posten. Die gleiche Assembly funktioniert auf meinem System einwandfrei. Kann es vielleicht mit Irgendwelchen .Net Updates zusammenhängen? Mich wundert es nur, dass die Anwendung so hammer simpel ist und nur dazu dient via IO Textdatei zu verarbeiten und hin und her zu kopieren. Das heißt ich habe auch nicht gerade viele Verweise in der Anwendung. Was ich auch Probieren werde ist ein Leerkompiliertes Projekt zu starten und dann gebe ich euch ein Feedback ob der Fehler immer noch besteht.
spicejam 21.07.2011
Hast du evtl. eine referenzierte DLL gelöscht? Hört sich stark danach an. Ansonsten den Tipp von KN mit dem UnhandledException testen, dann wirst du sehen was das Problem ist. Meistens genügt beim debuggen auch ein Blick auf das "Output"-Fenster.
Konstantin 21.07.2011
Das dachte ich anfangs auch. Allerdings habe ich in der Anwendung rein gar nichts referenziert. Auch wird beim Start der Anwendung komplett gar nichts ausgeführt. Es wird nur eine Form angezeigt von welcher dann weitere Formen gestartet werden. Sub New() = Leer, Form_Load = Leer. Hatte ich echt noch nie so einen Fehler.
spicejam 22.07.2011
4 Antworten
5
Noch eine Idee: Du könntest das Tool "Process Monitor" von SysInternals verwenden. Mit diesem Tool kannst Du alle Dateizugriffe eines Prozesses überwachen.
Somit findest Du ganz schnell heraus, auf welche Datei das Programm zugreifen möchte.
22.07.2011
CodeSniffer 1,3k 4 9
Hmm das ist denk ich eine gute Idee, wenn alle stricke reißen werde ich dies ausprobieren.
spicejam 22.07.2011
1
Mal ins ganz vage rein:du kannst deine Main-Methode so umbauen wie unten und schauen, ob du da eine bessere Meldung bekommst. Das ist jetzt C#-Code aus einer Winforms-Applikation, weil ich es bei mir rauskopert habe. Aber du kannst es ja in VB übersetzen und entsprechend anpassen.

static void Main()
{
try
{
AppDomain.CurrentDomain.UnhandledException +=
new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
Application.ThreadException +=
new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);

//Application ist im Namespace System.Windows.Forms drinnen.
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);

Application.Run(new MyForm()); // oder starte, was du starten willst
}
catch (Exception ex)
{
MessageBox.Show(ex.Message
+ Environment.NewLine
+ Environment.StackTrace);
}

}

static void CurrentDomain_UnhandledException
(object sender, UnhandledExceptionEventArgs e)
{
try
{
Exception ex = (Exception)e.ExceptionObject;
MessageBox.Show(ex.Message
+ Environment.NewLine
+ Environment.StackTrace);
}
finally
{
Application.Exit();
}
}

public static void Application_ThreadException
(object sender, System.Threading.ThreadExceptionEventArgs e)
{
try
{
Exception ex = (Exception)e.Exception;
MessageBox.Show(ex.Message
+ Environment.NewLine
+ Environment.StackTrace);
}
finally
{
Application.Exit();
}
}
21.07.2011
KN 1,7k 1 8
Ich werde dies heute mal in die Anwendung mit Einbauen. Danke :)
spicejam 22.07.2011
Bin gespannt, ob es hilft, den Fehler zu finden. :-)
KN 22.07.2011
0
Und wo hält der Debugger an, wenn Du im Visual Studio unter Debug | Exceptions bei Common Language Runtime Exceptions einen Haken bei "Thrown" setzt?
Der Debugger hält dann direkt bei der Zeile wo die Exception auftritt. Mit Hilfe des Callstacks sollte es relativ einfach sein die Ursache herauszufinden.

Gruß

CodeSniffer
22.07.2011
CodeSniffer 1,3k 4 9
Sorry, habs erst jetzt gecheckt, dass der Fehler auf einem anderen System auftritt. Dann ist die Lösung mit dem Unhandled-ExceptionHandler die Beste.
CodeSniffer 22.07.2011
0
Ist das System auf dem das Program crasht ev. ein 64-Bit Windows? Wenn ja dann ev. mal mit CORFLAGS.EXE das Programm auf 32 Bit umstellen und schauen ob es dann läuft.
22.07.2011
Tosch 216 5
Leider nicht ist 32-bit. Und das schlimme daran ist, das an dem System nichts verändert wurde. Von heute auf morgen startet die Anwendung mit dem Fehlerbericht.
spicejam 22.07.2011

Stelle deine .net-Frage jetzt!