2011-01-02 7 views
0

Ich bin auf Windows 7 ausgeführt und ich habe ein Problem mit meiner App beim Booten. In meiner App verwende ich einige Threads und externe dll (sqlite3.dll, etc ...). Ich habe diese Zeilen zunächst meine start.exe-Datei enthalten:Boot-Problem

RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true); 
String p = System.Environment.CommandLine.Replace("vshost.",""); 
String pp = p.Remove(p.Length-1); 
rkApp.SetValue("MyAPP", pp); 

Wenn ich meine Anwendung manuell von exe-Datei (oder mit Visual Studio) starte ordnungsgemäß funktioniert. Wenn ich meine App beim Neustart starte, stürzt MyApp nach wenigen Sekunden ab.

Warum habe ich dieses Problem?

EDIT: Ich habe angebracht Crash-Protokoll:

Descrizione 
Percorso dell'applicazione che ha generato l'errore: C:\Users\Francesco\DynInst\bin\start.exe 

Firma del problema 
Nome evento problema: APPCRASH 
Nome applicazione: start.exe 
Versione applicazione: 1.0.0.0 
Timestamp applicazione: 4d2061b9 
Nome modulo con errori: KERNELBASE.dll 
Versione modulo con errori: 6.1.7600.16385 
Timestamp modulo con errori: 4a5bdaae 
Codice eccezione: e0434f4d 
Offset eccezione: 00009617 
Versione SO: 6.1.7600.2.0.0.256.48 
ID impostazioni locali: 1040 
Informazioni aggiuntive 1: 0a9e 
Ulteriori informazioni 2: 0a9e372d3b4ad19135b953a78882e789 
Ulteriori informazioni 3: 0a9e 
Ulteriori informazioni 4: 0a9e372d3b4ad19135b953a78882e789 

Ulteriori informazioni sul problema 
ID bucket: 2250313277 
+0

@Cecco Was er meint, ist, dass Sie über keine Beiträge abgestimmt haben. Sie sollten dem System helfen, indem Sie nützliche Fragen und Antworten auswählen, indem Sie auf den Pfeil neben ihnen klicken. Ich schlage vor, Sie lesen die [faq] (http://stackoverflow.com/faq). @Mitch Bitte machen Sie keine solchen Vorschläge, ohne Ratschläge zu geben. Zumindest Link zur FAQ. – marcog

+0

Für den Anfang könnten einige Informationen über den Absturz selbst helfen. Sprich, eine Stapelspur. Wenn Sie Probleme beim Debuggen Ihrer App haben, legen Sie eine System.Diagnostics.Debugger.Break() in die erste Zeile. – Rytmis

+0

Danke Rytmis. Ich bin ein Neuling von Visual Studio, können Sie mir erklären, wie ich System.Diagnostics.Debugger.Break() verwenden kann? – CeccoCQ

Antwort

0

Wir haben mein Problem gelöst. FYI: Wenn Sie Directory.GetCurrentDirectory() für eine Anwendung verwenden, die beim Booten gestartet werden soll, müssen wir den korrekten Pfad überprüfen (eigentlich ist Windows/System).

Danke für Ihre Hilfe! Mit Dynamic Debug funktioniert alles korrekt!