ThinkGeo.com    |     Documentation    |     Premium Support

Catch exceptions from your DLLs

Is there a way to catch exceptions thrown by your DLLs?  I have had a few times where one of the processes in the MapCoreSuite.dll or WPFDesktopEdition.dll have gotten an exception past my monitoring.  



This ties in to my two other posts: 

thinkgeo.com/forums/MapSuite/tabid/143/aft/11927/Default.aspx 

thinkgeo.com/forums/MapSuite/tabid/143/aft/12019/Default.aspx



In both of those, I get an exception without a clear way of catching it and handling it.  I am just wondering if there is an exception handling class built into your DLLs I can use, or if you have other advice to keep my program alive.



Thanks again!

Hi Brandon, 
  
 Sorry we don’t have such helper classes, I think I can feel your pains after reviewing those posts but It should be very hard for us to catch all of the exceptions since some of them are always un-excepted. 
  
 Currently, I am afraid we still need to figure out every reason of the exception and then we should can find a way to catch them. 
 Thanks, 
 Troy

Thanks for taking a look Troy.  I have been trying to nail down the cause but obviously we haven’t gotten anywhere.  It looks like I am just going to set up a catching routine for all unhandled exceptions and filter out ThinkGeo based ones as I go.   
  
 I have played around with it this way today and caught a few of the ThinkGeo exceptions.  It seems like I can just mark them handled and move along without issue.  They seem to originate somewhere in the process of drawing tiles.  I will grab a stack trace next time one occurs and post it for information.

Hi Brandon,



Actually, I am wondering if you have tried the two ways like I advised in the end of this post  from you? 


        
  • set the DrawingExceptionMode for LayerOverlay.

  •     
  • Register the DrawingException event on the LayerOverlay to see if it can catch the exception.



If they still don’t work, I am afraid we still need to find a way to recreate your issue or you can send us more details on those exceptions.

Thanks,

Troy