Log on error

Our users are running Win10 and we have had a few get this error. The only way we seem to be able to fix it is reinstalling Epicor. I have checked personalization and everything else I can think of…any thoughts. I have one user that have gotten this a second time

image

Application Error

Exception caught in: System.Xml

Error Detail

Message: ‘.’, hexadecimal value 0x00, is an invalid character. Line 1, position 1.
Program: System.Xml.dll
Method: Throw

Client Stack Trace

at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
at System.Xml.XmlTextReaderImpl.ThrowInvalidChar(Char[] data, Int32 length, Int32 invCharPos)
at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
at System.Xml.XmlTextReaderImpl.Read()
at System.Xml.Linq.XDocument.Load(XmlReader reader, LoadOptions options)
at IceShell.ClientCacheSettingsProvider.LoadConfigFile(String userConfigPath)
at IceShell.ClientCacheSettingsProvider.LoadValuesFromFile(String userConfigPath)
at IceShell.ClientCacheSettingsProvider.GetPropertyValues(SettingsContext context, SettingsPropertyCollection collection)
at System.Configuration.SettingsBase.GetPropertiesFromProvider(SettingsProvider provider)
at System.Configuration.SettingsBase.SetPropertyValueByName(String propertyName, Object propertyValue)
at System.Configuration.SettingsBase.set_Item(String propertyName, Object value)
at System.Configuration.ApplicationSettingsBase.set_Item(String propertyName, Object value)
at IceShell.SessionManager.loadUserSettings(String userID, Boolean changeUserEvent)
at IceShell.SessionManager.InitializeInitialSession(Session initialSession)
at IceShell.SessionManager.<.ctor>b__31_1(Object _, SessionChangedEventArgs e)
at Ice.Lib.UI.SessionCache.OnInitialSessionChangedEvent(SessionChangedEventArgs e)
at Ice.Lib.UI.SessionCache.SetInitialSession(Session session)
at Ice.Lib.UI.SessionCache.set_CurrentSession(Session value)
at IceShell.SplashScreenApp.logon_LogonEnded(Object sender, EventArgs e)
at IceShell.Apps.LogonDialog.OnLogonEnded(Object sender, EventArgs e)
at IceShell.Apps.LogonDialog.StopLogon()
at IceShell.Apps.LogonDialog.DoWorkLogon()
at IceShell.Apps.LogonDialog.btnOK_ButtonClick(Object sender, InputEventArgs e)
at IceShell.ImageButton.Click(InputEventArgs e)
at IceShell.ImageButton.OnAccessKeyPressed(Object sender, AccessKeyPressedEventArgs e)
at System.Windows.Input.AccessKeyPressedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at System.Windows.Input.AccessKeyManager.GetInfoForElement(IInputElement element, String key)
at System.Windows.Input.AccessKeyManager.GetTargetsForScope(Object scope, String key, IInputElement sender, AccessKeyInformation senderInfo)
at System.Windows.Input.AccessKeyManager.GetTargetsForSender(IInputElement sender, String key)
at System.Windows.Input.AccessKeyManager.ProcessKeyForSender(Object sender, String key, Boolean existsElsewhere, Boolean userInitiated)
at System.Windows.Input.AccessKeyManager.OnKeyDown(KeyEventArgs e)
at System.Windows.Input.AccessKeyManager.PostProcessInput(Object sender, ProcessInputEventArgs e)
at System.Windows.Input.InputManager.RaiseProcessInputEventHandlers(ProcessInputEventHandler postProcessInput, ProcessInputEventArgs processInputEventArgs)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndKeyboardInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawKeyboardActions actions, Int32 scanCode, Boolean isExtendedKey, Boolean isSystemKey, Int32 virtualKey)
at System.Windows.Interop.HwndKeyboardInputProvider.ProcessKeyAction(MSG& msg, Boolean& handled)
at System.Windows.Interop.HwndSource.CriticalTranslateAccelerator(MSG& msg, ModifierKeys modifiers)
at System.Windows.Interop.HwndSource.TranslateAcceleratorCore(MSG& msg, ModifierKeys modifiers)
at System.Windows.Interop.HwndSource.System.Windows.Interop.IKeyboardInputSink.TranslateAccelerator(MSG& msg, ModifierKeys modifiers)
at System.Windows.Forms.Integration.ElementHost.ProcessCmdKey(Message& msg, Keys keyData)
at IceShell.Apps.Controls.WinformsControlHost.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.PreProcessMessage(Message& msg)
at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)

Yes, this has happened before. A configuration file get corrupted. A couple of solutions here:

What @Mark_Wonsil said. :wink:

I recently ran into a similar error with one of my users when they tried to log into Epicor. Searching for a solution, I found the post below and discovered the existence of a user.config file located in C:\Users\username\Local\Epicor\Epicor.exe_StrongName_blahblahblah\IceVersion\user.config. The next time this happens, try renaming that file and opening Epicor and see if it gets recreated and the error goes away and allows your user in.

Yea, sysconfig or the like. Just please backup the bad file and send to support to figure out if we have a bug versus you doing it to yourself on a manual edit.

I’ve seen this too, most often after a windows update on the local computer, or at least that’s been our pattern. I just open that file and you’ll see it’s been truncated. Replacing the missing ending tags also works.

I just ran into this today, and another file you may have to delete is in the 'C:\ProgramData\Epicor[Server-Port][version]\UserConfig folder. There was a 0 byte file in there for the user that was empty, so I just deleted it and let Epicor re-create it.

We had a user with this issue today and this fixed it after trying pretty much everything else!