2009-08-21 19 views
6

Desde que eliminé el archivo original settings.settings tuve problemas interminables para que la configuración funcione. Recibo el error "El sistema de configuración no se pudo inicializar" en los métodos get o set. ¿Algunas ideas? Gracias."El sistema de configuración no se inicializó" al acceder a las configuraciones. Configuraciones

public static Settings Default { 
     get { 
      return defaultInstance; 
     } 
    } 

    [global::System.Configuration.UserScopedSettingAttribute()] 
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 
    [global::System.Configuration.DefaultSettingValueAttribute("Keywords.log")] 
    public string KeywordsLog { 
     get { 
      return ((string)(this["KeywordsLog"])); 
     } 
     set { 
      this["KeywordsLog"] = value; 
     } 
    } 

problema se encuentra en Settings.Designer.cs

Adrian Banks, me temo que no sé cómo aún más depuración? Ya se rompe el error. El encabezado del cuadro proporcionado es "ConfigurationErrorsException" si eso ayuda de alguna manera.

Disculpe, no me di cuenta de que podía ver más detalles en VS.

System.Configuration.ConfigurationErrorsException was unhandled 
    Message="Configuration system failed to initialize" 
    Source="System.Configuration" 
    BareMessage="Configuration system failed to initialize" 
    Line=0 
    StackTrace: 
     at System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey) 
     at System.Configuration.ClientConfigurationSystem.PrepareClientConfigSystem(String sectionName) 
     at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.RefreshConfig(String sectionName) 
     at System.Configuration.ConfigurationManager.RefreshSection(String sectionName) 
     at System.Configuration.ClientSettingsStore.ReadSettings(String sectionName, Boolean isUserScoped) 
     at System.Configuration.LocalFileSettingsProvider.GetPropertyValues(SettingsContext context, SettingsPropertyCollection properties) 
     at System.Configuration.SettingsBase.GetPropertiesFromProvider(SettingsProvider provider) 
     at System.Configuration.SettingsBase.GetPropertyValueByName(String propertyName) 
     at System.Configuration.SettingsBase.get_Item(String propertyName) 
     at System.Configuration.ApplicationSettingsBase.GetPropertyValue(String propertyName) 
     at System.Configuration.ApplicationSettingsBase.get_Item(String propertyName) 
     at READOO.Properties.Settings.get_KeywordsLog() in C:\Users\USER\Documents\Visual Studio 2008\Projects\READOO\READOO\Properties\Settings.Designer.cs:line 31 
     at READOO.SettingsWindow..ctor() in C:\Users\USER\Documents\Visual Studio 2008\Projects\READOO\READOO\SettingsWindow.cs:line 19 
     at READOO.WelcomeWindow.Settings_Click(Object sender, EventArgs e) in C:\Users\user\Documents\Visual Studio 2008\Projects\READOO\READOO\WelcomeWindow.cs:line 23 
     at System.Windows.Forms.Control.OnClick(EventArgs e) 
     at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) 
     at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) 
     at System.Windows.Forms.Control.WndProc(Message& m) 
     at System.Windows.Forms.ButtonBase.WndProc(Message& m) 
     at System.Windows.Forms.Button.WndProc(Message& m) 
     at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
     at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 
     at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) 
     at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) 
     at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) 
     at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) 
     at READOO.Program.Main() in C:\Users\USER\Documents\Visual Studio 2008\Projects\READOO\READOO\Program.cs:line 18 
     at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) 
     at System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData) 
     at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone() 
     at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
     at System.Threading.ThreadHelper.ThreadStart() 
    InnerException: System.Configuration.ConfigurationErrorsException 
     Message="Section or group name 'READOO.Properties.Settings' is already defined. This can not be defined multiple times. (C:\\Users\\USER\\Documents\\Visual Studio 2008\\Projects\\READOO\\READOO\\bin\\Debug\\READOO.exe.config line 6)" 
     Source="System.Configuration" 
     BareMessage="Section or group name 'READOO.Properties.Settings' is already defined. This can not be defined multiple times." 
     Filename="C:\\Users\\USER\\Documents\\Visual Studio 2008\\Projects\\READOO\\READOO\\bin\\Debug\\READOO.exe.config" 
     Line=6 
     StackTrace: 
      at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal) 
      at System.Configuration.BaseConfigurationRecord.ThrowIfInitErrors() 
      at System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey) 
     InnerException: 

@ joan -> chill.

+0

Es extraño, ¿dónde está ocurriendo este error (por ejemplo, tiempo de ejecución, vs diseñador), y tiene algún paso para reproducir.Como solo traté de eliminar el archivo de configuración pero manteniendo la clase que se generó y funciona bien. –

+0

¿Se puede solucionar el error y romper donde ocurrió la excepción "El sistema de configuración no se pudo inicializar"? Si es así, ¿la excepción interna tiene más información sobre qué está causando el problema? – adrianbanks

+0

Parece que algo podría estar fallando en la deserialización, como Adrian, verifica las excepciones internas o cualquier otro detalle que pueda contener un mensaje de error completo. –

Respuesta

8

Este sería su pista:

Sección o 'READOO.Properties.Settings' Nombre de Grupo ya está definido. Esto no se puede definir varias veces. (C: \ Users \ Dylan \ documentos \ Visual Studio 2008 \ Projects \ READOO \ READOO \ bin \ línea de depuración \ READOO.exe.config 6)

es probable que tenga 2 <section name="READOO.Properties.Settings"> elementos en su definición <configSections> dentro de ese archivo de configuración.

La entrada duplicada es más probable en la línea 6 en dicho archivo de configuración.

0

Este problema es de 3 años de edad, pero el problema nunca pasa de moda .. en caso de alguien tropieza con este ..

que tenían el mismo problema al copiar una sección de configuración de un proyecto en otro proyecto de app.config y no ha podido copiar el espacio de nombres completa ..

<membership> 
    <providers> .. 

en lugar de

<system.web> 
    <membership> 
     <providers> .. 

Asegúrate de usar el juego completo.

5

Me pasó a mí también. La solución fue eliminar todo en Users \ yourUserName \ AppData \ Local \ YourAppName.

Parece que cuando se guardó algún ajuste como Ámbito del usuario de la configuración y luego se convirtió (en Settings.settings designer) en Ámbito de aplicación de configuración algo se estropeó y VS no sabe dónde tomar el valor de configuración de.

Ahora, si solo agrega algunos ajustes como configuración del alcance del usuario y luego gírelos para configurar el alcance de la aplicación (sin cambiar y guardarlo programáticamente): todo va bien. Pero si guarda la configuración con Properties.Settings.Default.Save() y luego trata de convertirlo en el ámbito de aplicación, comenzará a causar el problema.

Espero que ayude.

+0

Gracias, había establecido algunas configuraciones para el alcance del usuario por accidente. –

Cuestiones relacionadas