ThinkGeo.com    |     Documentation    |     Premium Support

Unhandled Exception from Tile

Hi,


We're using MapSuite WPF Desktop Edition version 5.5.  Our map setup mostly consists of an OpenStreetMapOverlay and a few SimpleMarkerOverlays.  We've been using map suite with the OpenStreetMapOverlay for several months now and have never encountered this exception.  We just upgraded to MapSuite 5.5 today and now two of my developers have reported randomly seeing this exception each within an hour of each other.


I assume the issue has something to do with OpenStreetMap only because the exception indicates there is a remote server involved but that is only an assumption.  Are there any known issues with 5.5 and an exception like this?


Exception String: The remote server returned an error: (404) Not Found.


Exception Stack Trace:


   at ThinkGeo.MapSuite.WpfDesktopEdition.Tile.<>c__DisplayClass2.<DrawException>b__0()
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   at System.Threading.ExecutionContext.runTryCode(Object userData)
   at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.Run()
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run(Window window)
   at MapTest.Initializer.Run() in C:\ProgramFiles\MapTest\Initializer.cs:line 45
   at MapTest.Program.Main(String[] argv) in  C:\ProgramFiles\MapTest\Program.cs:line 102

 Thanks.


Ben



Hi Ben, 
  
 Sorry we haven’t get more useful information from the stack trace. I talked with our developer and it looks we haven’t an known issue like this. 
  
 Do you remember your original 5.0 detail version and what’s the current 5.5 detail version? 
  
 If you are not using the latest 5.5 package, I think you can try the latest build, we did some changes in it. 
  
 We are keeping try to catch this exception in our environment. 
  
 Please let us know if this exception appear again, more information is welcome. 
  
 Regards, 
  
 Don

How do I go about getting the “detail version”? 
  
 Right clicking on either of the dlls (WpfDesktopEdition.dll, MapSuiteCore.dll) in Windows Explorer, selecting “Properties”, and then using the version tab lists both the “Assembly Version” and the “Product Version” as “5.5.0.0”. 
  
 Using the “Properties” panel in Visual Studio 2010 lists the “Version” for both dlls as “5.5.0.0” 
  
 Calling WpfMap.GetVersion() in code returns “MapSuiteCore:5.5.0.0;WpfDesktopEdition:5.5.0.0” 
  
 I’m assuming that you’re looking for some type of build number and that this is not the “detail version” that you want - is that correct or is my detail version really just “5.5.0.0”? 
  
 I did the same three things to the 5.0 dlls we were using and it listed the version number as “5.0.0.0” 
  
 Let me know how I can get better information for you. 
  
 Ben

Hi Ben, 
  
 Thanks for your update.  
  
 Yes, your detail version is 5.5.0.0, that’s the 1st release of 5.5 version. 
  
 We did some changes and fix some issues now, I think you can try to download the latest release or latest development builds in helpdesk.thinkgeo.com and did a replace try, we are trying to test for your report. 
  
 It looks the latest release is 5.5.0.49 and the latest development is 5.5.62.0 now. 
  
 Regards, 
  
 Don

 Don,


I downloaded the latest development build from the web site (5.5.65.0) and was able to reproduce this unhandled exception. It took a few minutes of zooming and dragging around the world map but it eventually crashed while zoomed in fairly close over Washington, DC. I tried to mostly zoom in and out of major cities that I haven't looked at before to make sure I wasn't used cached map tiles.


Exception String: Unable to connect to the remote server


Exception stack trace:


at ThinkGeo.MapSuite.WpfDesktopEdition.Tile.<>c__DisplayClass2.<DrawException>b__0()

at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

at System.Windows.Threading.DispatcherOperation.InvokeImpl()

at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)

at System.Threading.ExecutionContext.runTryCode(Object userData)

at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)

at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)

at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)

at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

at System.Windows.Threading.DispatcherOperation.Invoke()

at System.Windows.Threading.Dispatcher.ProcessQueue()

at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)

at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

at System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)

at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)

at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)

at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)

at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)

at System.Windows.Threading.Dispatcher.Run()

at System.Windows.Application.RunDispatcher(Object ignore)

at System.Windows.Application.RunInternal(Window window)

at System.Windows.Application.Run(Window window)

at MapTest.Initializer.Run() in C:\ProgramFiles\MapTest\Initializer.cs:line 45

at MapTest.Program.Main(String[] argv) in C:\ProgramFiles\MapTest\Program.cs:line 102


 


 



Ben, 
  
 Thanks for your information and stack trace. 
  
 We haven’t get the same exception after test many times with the specified version. 
  
 We are keeping test that in different machines and try to find the reason. 
  
 Regards, 
  
 Don