阅读:1659回复:2
[求助]关于IExtractionOp接口的一段代码出现问题<P>我在C#中编写了一段代码</P> <P> ILayer pLayer = axMapControl1.get_Layer(0); //其中该层为加入的栅格<BR> IRasterLayer pRasterLayer = (IRasterLayer)pLayer;<BR> IExtractionOp pExtractionOp = new RasterExtractionOpClass();<BR> IGeoDataset pOutDataset;<BR> pOutDataset = pExtractionOp.Polygon((IGeoDataset)pRasterLayer.Raster, pPolygon, true); //pPolygon为某一多边形区域</P> <P>该段代码可以通过编译运行,用到的dll有ESRI.ArcGIS.Analyst3D; ESRI.ArcGIS.SpatialAnalyst;<BR>ESRI.ArcGIS.GeoAnalyst;</P> <P> 但是我把这段代码转为VB中出现了问题,代码如下:Dim pLayer As ILayer<BR> Set pLayer = MapControl1.Layer(0)<BR> Dim pRasterLayer As IRasterLayer<BR> Set pRasterLayer = pLayer<BR> Dim pRaster As IRaster<BR> Set pRaster = pRasterLayer.Raster<BR> Dim pOutDataSet As IGeoDataset<BR> Dim pExtractionOp As IExtractionOp<BR> Set pExtractionOp = New RasterExtractionOp<BR> Set pOutDataSet = pExtractionOp.polygon(pRaster, pPolygon, True)</P> <P>运行到最后一句是总是出错,错误内容为:“实时错误 '-214746725(80004005)' 自动化错误”。上面用到的dll我也加入了。请问各位大虾,问题出在哪里。谢谢! </P> |
|
1楼#
发布于:2006-03-14 22:24
顶
|
|
2楼#
发布于:2006-03-16 16:19
这个是空间分析扩展模块的功能,你在ae中使用的时候,你有没在程序启动前, 首先检测license许可?
|
|
|