Unable to load LaunchBox

Issue #4625 invalid
steve created an issue

Getting the following error when trying to run Launchbox:

Data error (cyclic redundancy check).

App: LaunchBox Version: 8.9 Type: System.IO.IOException Site: Void WinIOError(Int32, System.String) Source: mscorlib

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.ReadCore(Byte[] buffer, Int32 offset, Int32 count) at System.IO.FileStream.Read(Byte[] array, Int32 offset, Int32 count) at System.Xml.XmlTextReaderImpl.ReadData() at System.Xml.XmlTextReaderImpl.ParseQName(Boolean isQName, Int32 startOffset, Int32& colonPos) at System.Xml.XmlTextReaderImpl.ParseElement() at System.Xml.XmlTextReaderImpl.ParseElementContent() at System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace) at System.Xml.XmlLoader.ReadCurrentNode(XmlDocument doc, XmlReader reader) at System.Xml.XmlDocument.ReadNode(XmlReader reader) at System.Data.DataSet.ReadXml(XmlReader reader, Boolean denyResolving) at System.Data.DataSet.ReadXml(String fileName) at (DataManager , String ) at Unbroken.LaunchBox.Data.DataManager.LoadGames(String filePath) at (<>c__DisplayClass206_1 ) at Unbroken.LaunchBox.Data.DataManager.<>c__DisplayClass206_1.<Load>b__1() at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()

Recent Log:

2:27:28 PM Exception

Comments (4)

  1. steve reporter

    How do we get support for this app? Not good if I lose my entire collection and there is no way to get my data back.

  2. Jason Carr repo owner

    Hi Steve, sorry for the delay. Unfortunately this error means that your hard drive is either dying, or your file system is corrupted. We can help you out further with support on the forums, as BitBucket isn't really meant for that. I would run chkdsk first to see if it can fix the issue, but sadly, this isn't likely a LaunchBox issue.

  3. steve reporter

    I was working on this yesterday and discovered that the issue is not with the harddrive. I was watching the load process and it would freeze at the loading platforms stage and then the error message above would be displayed. Upon further research it ended up being one of the data XML files that was corrupt. It only saved 3/4 of the file and the rest was cut off. I also noticed that there is a backup directory of XML files that is created on a regular basis.

    This is for people that have this kind of data issue in the future...

    1 - Navigate to the Data directory of the Launchbox program.
    Example: C:\LaunchBox\Data 2 - Rename the Platforms directory to Platforms_bad 3 - Create a copy of the Bad Platforms directory and give it the name of Platforms This is where I got an error message stating one of the xml files could not be copied because it was locked or corrupt. So I clicked ignore/skip on this file and let the other files copy 4 - Make a note of the files that did not copy over. 5 - Navigate to the Backups directory: C:\LaunchBox\Backups 6 - Sort directory by date and locate the latest copy of the bad files identified in steps 3-4 7 - Copy the latest files to the C:\LaunchBox\Data directory 8 - Navigate back to the Data directory 9 - Rename the copied file by removing the date part of the file name. Example: Sony Playstation 4_2018-10-21_09-54-36.xml would be Sony Playstation 4.xml 10 - Restart Launchbox and validate it works.

    Notes to developers: Perhaps the error messaging could be enhanced to notify the user that there is a bad data file instead of spitting out a generic message like the one I posted in the original message. At each step of the load process, there should be a if-try-catch routine that will display an appropriate error if something happens. This way, end users will be able to troubleshoot the issue more quickly.

  4. Log in to comment