首页 > 代码库 > AE 尝试读写受保护的内存
AE 尝试读写受保护的内存
1 //获取两个点的高程 2 pRasterSurface.PutRaster(pRasterLayer.Raster, 0); 3 ISurface pSurface = pRasterSurface as ISurface; 4 point.Z = pSurface.GetElevation(point); 5 pt.Z = pSurface.GetElevation(pt); 6 //IPolyline pPolyline = AxMapC.TrackLine() as IPolyline; 7 IPoint pPoint = null; 8 Boolean pBool = true; 9 IPolyline pVPolyline = null;10 IPolyline pInPolyline = null;11 object pRef = 0.13;12 pSurface.GetLineOfSight(point, pt, out pPoint, out pVPolyline, out pInPolyline, out pBool, false, false, ref pRef);13 //如果pt在pVPolyline上,则可视;否则不可视14 return pBool;
调试的时候因为是循环这段函数,所以执行比较长的时间后,在GetElevation这句,会报“尝试读写受保护的内存……”这样的错误。但是单步调试却没有问题。然后从网上查到了一片文章:http://hi.baidu.com/liuzumou/item/1bfca7c3328adf2fef466555,http://www.cnblogs.com/GIS_zhou/articles/1551258.html
这种问题通常出现在应用程序反复调用频率极高的情况下。但是按照文章中加了释放资源的代码还是不管用。然后就重启电脑,也不管用。最后那么多数据竟然都单步调试完了。之后,再执行就不出现这个错误了,真是奇怪~
AE 尝试读写受保护的内存
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。