Solution - Responder - Responder Explorer Won't Start after a Dictionary Error Is Thrown

Version 2

    Behavior

    Users may receive the following error when trying to start Responder Explorer from ArcMap or from the executable:

     

    2015-09-07 12:25:50,306 [Main Thread] ERROR Miner.Windows [(null)] - An unexpected program error has occurred.

    Refer to the error log for detailed information about the error.

    System.ArgumentException: An item with the same key has already been added.

    at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)

    at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)

    at Miner.Responder.Shared.RemotingHelper.SearchWellKnownClientTypes(Type type)

    at Miner.Responder.Shared.RemotingHelper.GetObject(Type type)

    at Miner.Responder.Framework.Interaction.ArcMapUtilities.GetArcMapServices()

    at Miner.Responder.Windows.TransparencyRegistrar.RegisterWithArcMap(Control control)

    at Miner.Responder.Windows.TransparencyRegistrar.Register(Control control)

    at Miner.Responder.Explorer.MainProgram.ApplicationInitialized(Object sender, EventArgs args)

    at Miner.Windows.MainApp.OnApplicationInitialized(EventArgs e)

    at Miner.Windows.MainWindow.OnLoad(EventArgs e)

    at System.Windows.Forms.Form.OnCreateControl()

    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)

    at System.Windows.Forms.Control.CreateControl()

    at System.Windows.Forms.Control.WmShowWindow(Message& m)

    at System.Windows.Forms.Control.WndProc(Message& m)

    at System.Windows.Forms.ScrollableControl.WndProc(Message& m)

    at System.Windows.Forms.ContainerControl.WndProc(Message& m)

    at System.Windows.Forms.Form.WmShowWindow(Message& m)

    at System.Windows.Forms.Form.WndProc(Message& m)

    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

     

     

    Problem

    The error is caused by a memory address already existing with the value needed. This is normally attributed to an additional Responder Explorer process running on the machine. It may not be visible to the user but could exist in the processes of the system, or possibly running in a Citrix server session.

     

    Solution

    A remedy for this is to terminate the left-over process. Any error message thrown by Responder during startup, or an error message that could result in crashing the client, may leave this process behind. Later versions of Responder were modified to ignore the message and allow the client to start again. Further investigation is necessary to determine the extra process and remedy the original cause. The event log should be checked for prior logins to determine what may have initiated the process, if the user is unsure of the events that transpired.