zoukankan      html  css  js  c++  java
  • ArcGISEngine中GP工具奇怪错误问题error(s) have been detected for layer

    运行时环境:使用CADToGeodatabase工具执行DWG文件转gdb过程,多次执行(即执行完一个dwg转gdb,再执行另一个dwg转gdb),执行失败

    错误描述:首先执行CADToGeodatabase工具需要先生成gdb工作空间,这个很简单没什么问题

    IWorkspaceFactory2 pTargetWsf = new FileGDBWorkspaceFactoryClass();
    IWorkspaceName pWorkspaceName = pTargetWsf.Create(sPath, sName, null, 0);
    IWorkspace gdbWks = pTargetWsf.Open(pWorkspaceName.ConnectionProperties, 0);

    然后执行CADToGeodatabase gp工具。

    public static bool CADToGeodatabase(string cadPath,string gdbPath,ref string msg)
            {
                Geoprocessor gp = new Geoprocessor();
                object sev = null;
                try
                {
                    CADToGeodatabase tool = new CADToGeodatabase();
                    tool.input_cad_datasets = cadPath;
                    tool.out_dataset_name = "CADDATASET";
                    tool.out_gdb_path = gdbPath;
                    tool.reference_scale = 1000;
                    gp.Execute(tool, null);
                    return true;
                }
                catch (Exception ex)
                {
                    msg = gp.GetMessages(ref sev);
                    return false;
                }
            }

    问题来了,在gp.Execute(tool, null)处,第二次执行会抛出异常,通过查看msg,发现是因为有2072个注记转换失败,并且记录在了log文件中。

    ERROR 000278: 2072 error(s) have been detected for layer 20181015142904. Errors are described in file GLC:Users用户AppDataLocalTempGL201810151429040.log.log in your temp directory.
    ERROR 000016: 2072 annotation(s) rejected
    Failed to execute (CADToGeodatabase).

    在temp文件夹下确实发现了log日志。

    后来发现官方实例用到gp工具的地方都是在类实例中使用,没在静态方法中使用。于是测试把gp工具不用静态调用,结果好了,而且每次在temp下都不会有日志存在。

     浅尝辄止:以后用gp工具最好不要放在静态调用

  • 相关阅读:
    【刷题】HDU 6183 Color it
    【刷题】HDU 3435 A new Graph Game
    【刷题】HDU 1853 Cyclic Tour
    【刷题】BZOJ 5418 [Noi2018]屠龙勇士
    【刷题】BZOJ 5415 [Noi2018]归程
    【刷题】BZOJ 4636 蒟蒻的数列
    【刷题】BZOJ 4443 [Scoi2015]小凸玩矩阵
    vue_过滤器: 对要显示的数据进行特定格式化后再显示
    vue_过渡_动画
    vue_实例_组件的生命周期
  • 原文地址:https://www.cnblogs.com/xibei/p/9791105.html
Copyright © 2011-2022 走看看