Thanks for the post Phil, this week we introduced some new features in the daily build for enhanced geometry functions. You can read about these features at:
As part of that change there are some new dependencies that need to be deployed to your system folder. With the daily build there is a new text file called UnmanagedAssembliesDeploymentGuide.txt that will tell you how and where copy the Dll's so everything works correctly.
Also according to the documentation in the link above if you set the BaseShape.GeometryLibrary property it will continue to use the old library and you shouldn't get this error.
The application works fine in Windows XP x86, but when trying to run it in Windows 7 x86 I get the "Unable to load DLL" exception that Phil mentions. I have SqlServerSpatial110.dll (the one that was in SqlServerTypes_X86 folder) either in c:\Windows\System32 and c:\Windows\SysWOW64 (is not needed in this system, but that way same installation also should work in x64 Windows 7 installation)
This is the Exception:
17/07/2012 15:21:50: System.DllNotFoundException: No se puede cargar el archivo DLL 'SqlServerSpatial110.dll': No se puede encontrar el módulo especificado. (Excepción de HRESULT: 0x8007007E)
en Microsoft.SqlServer.Types.GLNativeMethods.IsValid(GeoMarshalData g, Boolean& result)
en Microsoft.SqlServer.Types.GLNativeMethods.IsValid(GeoData g)
en Microsoft.SqlServer.Types.SqlGeometry.IsValidExpensive()
en Microsoft.SqlServer.Types.SqlGeometry.Construct(GeoData g, Int32 srid)
en Microsoft.SqlServer.Types.SqlGeometry.GeometryFromText(OpenGisType type, SqlChars text, Int32 srid)
en Microsoft.SqlServer.Types.SqlGeometry.STGeomFromText(SqlChars geometryTaggedText, Int32 srid)
en ThinkGeo.MapSuite.Core.BaseShape.ContainsCore(BaseShape targetShape)
en ThinkGeo.MapSuite.Core.RectangleShape.ContainsCore(BaseShape targetShape)
en ThinkGeo.MapSuite.Core.BaseShape.Contains(BaseShape targetShape)
en ThinkGeo.MapSuite.WpfDesktopEdition.MarkerOverlay.DrawCore(RectangleShape targetExtent, OverlayRefreshType overlayRefreshType)
en ThinkGeo.MapSuite.WpfDesktopEdition.Overlay.Draw(RectangleShape targetExtent, OverlayRefreshType refreshType)
en ThinkGeo.MapSuite.WpfDesktopEdition.WpfMap.lBU=(Overlay lxU=, RectangleShape mBU=, OverlayRefreshType mRU=)
en ThinkGeo.MapSuite.WpfDesktopEdition.WpfMap.jBU=(IEnumerable`1 kRU=, RectangleShape khU=, OverlayRefreshType kxU=)
en ThinkGeo.MapSuite.WpfDesktopEdition.WpfMap.DrawCore(RectangleShape targetExtent, OverlayRefreshType overlayRefreshType)
en ThinkGeo.MapSuite.WpfDesktopEdition.WpfMap.hBU=(Object hRU=, EventArgs hhU=)
en System.Windows.Threading.DispatcherTimer.FireTick(Object unused)
en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)