C# 调用GP工具弹出对COM组件的调用返回错误,怎么查具体的原因?

// 调用MosaicToNewRaster 工具进行的融合
DeleteTemplateRaster(m_outputDir);
ESRI.ArcGIS.DataManagementTools.MosaicToNewRaster pMosaicToNewRaster = new ESRI.ArcGIS.DataManagementTools.MosaicToNewRaster();
pMosaicToNewRaster.input_rasters = strRasters;
pMosaicToNewRaster.output_location = m_outputDir;
pMosaicToNewRaster.mosaic_method = "MEAN";
pMosaicToNewRaster.cellsize = m_dCellSize;
pMosaicToNewRaster.pixel_type = m_strPixelType;
pMosaicToNewRaster.number_of_bands= 1;
pMosaicToNewRaster.raster_dataset_name_with_extension= strTempImage;
pMosaicToNewRaster.mosaic_colormap_mode = "FIRST";

object o = pGeoProc.Execute(pMosaicToNewRaster, null);
====================================================================
C# 调用GP工具弹出对COM组件的调用返回错误,但是用Arcpy用同样的参数执行成功了。
因为这段代码 之前一直在用,所以应该和数据格式 或什么有关系,但是仅仅 提示COM组件调用错误,无法查看。有没有什么方法能够得到更多的错误信息,便于分析问题?
已邀请:

朱新颖

赞同来自:

可以通过try catch来获取详细的报错信息,看下具体是哪个参数报错,比如:
    try
              {
                 gp.Execute("ExtractByPolygon", parameters, null);
            }

              catch (Exception ex)
             {
                 // Print geoprocessing execution error messages.
                  for (int i = 0; i < gp.MessageCount; i++)
                     Console.WriteLine(gp.GetMessage(i));
              }

要回复问题请先登录注册