AE调用GP工具出错

private void RunTool(Geoprocessor geoprocessor, IGPProcess process, ITrackCancel TC)
        {
            geoprocessor.OverwriteOutput = true;
            try {
                geoprocessor.Execute(process, null);
                ReturnMessage(geoprocessor);
            }
            catch(Exception err){
                MessageBox.Show(err.Message);
                ReturnMessage(geoprocessor);
            }
        }
        private void ReturnMessage(Geoprocessor gp)
        {
            string ms = "";
            if (gp.MessageCount > 0)
            {
                for (int count = 0; count <= gp.MessageCount - 1; count++)
                    ms += gp.GetMessage(count)+"\n";
            }
        }
RunTool(gp, pViewshed, null);

 用这个函数就可以查出GP调用是哪里出错了。

posted @ 2015-01-31 16:12  xiaominmin54  阅读(491)  评论(0编辑  收藏  举报