2009-08-21 15 views
6

Odkąd usunięto pierwotny plik settings.settings, miałem nieskończone problemy z przywróceniem ustawień. Pojawia się błąd "Błąd inicjalizacji systemu konfiguracji" na metodach get lub set. Jakieś pomysły? dzięki."Nie można zainicjować systemu konfiguracyjnego" podczas uzyskiwania dostępu do ustawień.ustawienia

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; 
     } 
    } 

problem znajduje się w Settings.Designer.cs

Adrian Banki, obawiam się, że nie wiem jak dalej debug? To już narusza błąd. Nagłówek danego pola to "ConfigurationErrorsException", jeśli to pomaga w jakikolwiek sposób.

Przepraszam, nie zdawałem sobie sprawy, że możesz zobaczyć więcej szczegółów w 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 -> chłód.

+0

Nieparzysty, gdzie występuje ten błąd (np. Środowisko wykonawcze, projektant) i czy masz jakieś kroki do odtworzenia.Jak tylko próbowałem usunąć plik ustawień, ale zachowując klasę, która została wygenerowana i działa dobrze. –

+0

Czy można debugować błąd i zepsuć w miejscu, w którym wystąpił wyjątek "Niepowodzenie w konfiguracji systemu"? Jeśli tak, czy wewnętrzny wyjątek ma dodatkowe informacje na temat przyczyny problemu? – adrianbanks

+0

Wygląda na to, że coś może nie być w stanie odseparować, ponieważ Adrian sprawdza wewnętrzne wyjątki lub inne szczegóły, które mogą zawierać pełny komunikat o błędzie. –

Odpowiedz

8

To byłby twój trop:

Sekcja lub nazwa grupy 'READOO.Properties.Settings' jest już zdefiniowany. Tego nie można zdefiniować wiele razy. (C: \ Users \ Dylan \ Documents \ Visual Studio 2008 \ Projects \ READOO \ READOO \ bin \ Debug linii \ READOO.exe.config 6)

prawdopodobnie masz 2 <section name="READOO.Properties.Settings"> elementy definicji <configSections> ciągu tego plik konfiguracyjny.

Powtórny wpis najprawdopodobniej znajduje się w wierszu 6 we wspomnianym pliku konfiguracyjnym.

0

Ten problem ma 3 lata, ale problem nigdy się nie zestarzeje .. w przypadku ktoś natrafia na to ..

miałem ten sam problem, kiedy kopiowane sekcję konfiguracyjną jednego projektu do innego projektu app.config i nie udało się skopiować pełne przestrzeni nazw ..

<membership> 
    <providers> .. 

zamiast

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

Upewnij się, że używasz pełnego zestawu.

5

To też mi się przydarzyło. Rozwiązaniem było usunięcie wszystkiego w Users \ yourUserName \ AppData \ Local \ YourAppName.

Wygląda na to, że niektóre ustawienia zostały zapisane jako zakres ustawień użytkownika, a następnie włączone (w Ustawieniach. Projektant ustawień) to Zakres aplikacji ustawienia coś pomieszane i VS nie wie gdzie wziąć wartość ustawienia od.

Teraz, jeśli po prostu dodasz jakieś ustawienie jako ustawienie zakresu użytkownika, a następnie zmienisz to ustawienie na zakres zastosowania (bez zmiany i zapisania go programowo) - wszystko idzie dobrze. Ale jeśli zapiszesz ustawienie za pomocą Properties.Settings.Default.Save(), a następnie spróbujesz zmienić ustawienie na zakres aplikacji, zacznie ono powodować problem.

Mam nadzieję, że to pomaga.

+0

Dzięki, ustawiłem niektóre ustawienia zakresu użytkownika przez przypadek. –

Powiązane problemy