hello all,

I've got a serious problem. it started out of the blue without any
indication !!!!
some background:
i'm writing a service in VB.Net 2003 using MapPoint 2004 object which once in every 20 secondes gets locations of cars from a database and check if those cars are in specified regions or not.

the part who gets the list of cars (MapPoint.Pushpin) in specified region
(MapPoint.Shape) is this
[ (oMap is the active map, _PP is the pushpin
symbolize the car, ds is the oMap.Dataset with the pushpins) ]:

Dim rec As MapPoint.Recordset, shp As MapPoint.Shape, RegionsList As New
For Each shp In oMap.Shapes
If shp.Type <> GeoShapeType.geoLine AndAlso shp.Type <>
GeoShapeType.geoTextBox Then
rec = ds.QueryShape(shp)
If Not rec.EOF AndAlso Not rec.BOF Then
End If

now, that service can run for several times - find cars in regions, update
cars who left regions, find new cars in region, etc. but after a while
(minutes), not fixed or any, the "ds.QueryShape(shp)" methode fails and
throws this error:
"mappoint System.Runtime.InteropServices.COMException (0x80004005):
Unspecified error"
from that moment and on, even if i declare a new MapPoint.Application and gets new map etc. it keeps failing on same line.
the even weirder thing is that when i stop the service's run and get into
debug mode i can get the mappoint.Dataset name, it's record count, the map name , the shape name etc. it just that this "ds.QueryShape" methode is failing. in other tries, i discovered that if i had other methode relate to mappoint, as for example, MyPushpin.MoveTo(ds) or other it would fail in the same way. so my conclusion that the problem is the MapPoint object itself and not the specified methode.

any suggestions ???