Ich habe eine .NET 2.0-Anwendung mit nichts Besonderes darin. Es funktionierte bis gestern auf jeder PC, den ich es installierte oder kopierte, egal ob 2.0, 3.0, 3.5 oder 3.5 SP1 installiert wurde, egal ob es Win2000, XP oder sogar Win7 war (insgesamt 100+ Maschinen)..NET-Anwendung auf einem PC, nicht handhabbare Ausnahme
Gestern habe ich meine normale Installationsprozedur gemacht und wollte es einmal starten, um zu überprüfen, ob alles funktioniert ... und es war nicht. Das Programm stürzte hart ab und hinterließ mich mit dem informativen "Willst du diesen Fehler melden?" Dialog. Das Problem ist eine Ausnahme in der Main(String[] args)
Routine meiner Anwendung.
Die Ereignisanzeige zeigt den folgenden Eintrag:
Event Type: ErrorEvent
Source: .NET Runtime 2.0 Error Reporting
Event Category: None
Event ID: 5000
Date: 05/05/2010
Time: 16:09:09
User: N/A
Computer: myClientPC
Description:
EventType clr20r3, P1 apomenu.exe, P2 1.4.90.53, P3 4bdedea4,
P4 system.configuration, P5 2.0.0.0, P6 4889de74, P7 1a6, P8 136,
P9 ioibmurhynrxkw0zxkyrvfn0boyyufow, P10 NIL.
Nun ... große Informationen. Nach vieler Sucherei konnte ich endlich weitere Informationen zu dieser Ausnahme erhalten (durch einen Handler für UnhandledExceptions
direkt in My.MyApplication.New(), Application.Designer.vb
Zugabe):
System.Configuration.ConfigurationErrorsException
Configuration system failed to initialize
at System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
at System.Configuration.ClientConfigurationSystem.PrepareClientConfigSystem(String sectionName)
at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection(String sectionName)
at System.Configuration.ConfigurationManager.GetSection(String sectionName)
at System.Configuration.PrivilegedConfigurationManager.GetSection(String sectionName)
at System.Net.Configuration.SettingsSectionInternal.get_Section()
at System.Net.Sockets.Socket.InitializeSockets()
at System.Net.Sockets.Socket.get_SupportsIPv4()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.get_HostName()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.RegisterChannel(Boolean SecureChannel)
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
at MyAppNameHere.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Line 81.
Und an dieser Stelle ich bin stecken ... Ich bin aus von Ideen. Ich verwende keine Art von Konfigurationssystem aus dem Framework (kein Verweis auf System.Configuration, und es wurde nie eine MyAppnameHere.exe.config generiert oder verteilt, noch habe ich diesen Fehler zuvor gesehen). Ich habe auch a bug report at Microsoft (Google Cache) über diesen Fehler gefunden (in einem anderen Kontext). Aber wie es scheint, werden sie es nicht einmal anschauen.
Jede Hilfe wird sehr geschätzt!
Bearbeiten: Ich benutze Visual Studio 2008 Prof .. Crash passiert in Release-und Debug-Build auf dem Client-Rechner. Das Debuggen der Anwendung direkt auf dieser Maschine steht außer Frage, ich fürchte, 300+ Meilen und sie haben nur zwei Computer, mit denen sie arbeiten können.
Edit2: Andere .NET-Anwendungen funktionieren gut.
Edit3: Nach Andrey darauf hingewiesen, hatte ich auch einen Blick auf die Inner-Exception (ich immer vergessen, dass dieses Ding existiert):
System.Configuration.ConfigurationErrorsException
Unknown configraution directive "system.serviceModel". (c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config line 145)
at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal)
at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(ConfigurationSchemaErrors schemaErrors)
at System.Configuration.BaseConfigurationRecord.ThrowIfInitErrors()
at System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
ich diesen Abschnitt entfernt und alles funktioniert jetzt Es wird erwartet ... aber jetzt quält mich eine Frage: Warum haben andere Anwendungen funktioniert?
@Bobby gibt es innere Ausnahme? – Andrey
@Andrey: Du bist mein Held! – Bobby
bitte erklären :) – Andrey