can't understan what bug this is.

I did used quest on my computer for a while, but someday this error meeage appeard, and my quest program refuses to work at all. I did posted this on quest github, but they're no paying any single attention i think.

however, error code is as follows.
if anyone has some idea of how to fix it, please tell me how.

System.InvalidOperationException: An error occurred while creating the form. For more information, see Exception.InnerException. Error: An exception was thrown in the constructor call for the type 'GameBrowser.PlayBrowser' that matches the specified binding constraint. ---> System.Windows.Markup.XamlParseException: An exception was thrown in the constructor call for the type 'GameBrowser.PlayBrowser' that matches the specified binding constraint. ---> System.ArgumentException: An item with the same key has already been added.
Location: System.ThrowHelper.ThrowArgumentException (ExceptionResource resource)
Location: System.Collections.Generic.Dictionary2.Insert (TKey key, TValue value, Boolean add) Location: System.Collections.ObjectModel.KeyedCollection2.AddKey (TKey key, TItem item)
Location: System.Collections.ObjectModel.KeyedCollection2.InsertItem (Int32 index, TItem item) Location: System.Collections.ObjectModel.Collection1.Add (T item)
Location: GameBrowser.RecentItems.LoadRecentList ()
Location: GameBrowser.RecentItems..ctor (String listName)
Location: GameBrowser.PlayBrowser..ctor ()
--- end of internal exception stack trace ---
Location: System.Windows.Markup.WpfXamlLoader.Load (XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
Location: System.Windows.Markup.WpfXamlLoader.LoadBaml (XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
Location: System.Windows.Markup.XamlReader.LoadBaml (Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
Location: System.Windows.Application.LoadComponent (Object component, Uri resourceLocator)
Location: GameBrowser.Launcher.InitializeComponent ()
Location: GameBrowser.Launcher..ctor ()
Location: TextAdventures.Quest.Main.InitializeComponent ()
Location: TextAdventures.Quest.Main..ctor ()
--- end of internal exception stack trace ---
Location: TextAdventures.Quest.My.MyProject.MyForms.Create__Instance __ [T] (T Instance)
Location: TextAdventures.Quest.My.MyApplication.OnCreateMainForm ()
Location: Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun ()
Location: Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel ()

This appears to be a problem where a recent project ends up more than once in Quest's "recent" list in the registry. When it goes to build the recent list internally, it throws because more than one entry with the same filename exist. Looking at the code, I can't figure out (yet) how it gets into that state, but if you're willing to use "regedit", we can fix it.

Follow these steps:

  1. Run "regedit" (e.g. press the Windows key and then hit "R" and then type "regedit" in the box that pops up.) If it asks to be able to make changes to the system, say "yes".
  2. Under Computer in the tree on the left, look for HKEY_CURRENT_USER and open that folder.
  3. Look for SOFTWARE under that and open the folder.
  4. Search down for Quest under that and open the folder.

As this is the PlayBrowser, the key you care about is the one named "Recent". (If it were the EditBrowser one in the callback, you would have to focus on the EditorRecent key.)

The simplest way to fix this is to simply delete the Recent key (right-click on the word "Recent" and then choose "Delete" from the popup menu. Choose yes to confirm). Alternatively, you can open the Recent key (click on it) and look through the list of items for the ones beginning with "Recent", to see which entry is duplicated and remove only that one.

Note that if you do delete this key, then when you open Quest, the "recent" list on the Play tab will be empty until you begin playing games anew. I assume that is preferable to not being to open Quest at all!

Let me know if that makes sense or not and (if you try it) whether it works!

This topic is now closed. Topics are closed after 60 days of inactivity.