求大神解决...在使用IProximityOperator接口求两点间距时报错,错误类型:“System.Runtime.InteropServices.COMException”

 private List<IFeature> GetOwerJZD(List<IFeature>JZDfeatureList,IPolygon  pPoly)
        {
            List<IFeature>jzdFeatures=new List<IFeature>();           
            for (int i = 0; i < JZDfeatureList.Count; i++)
            {
                IFeature jzdFeature = JZDfeatureList[i];
                IGeometry jzdGeometry=jzdFeature.Shape as IGeometry;
                IPointCollection pPColl = pPoly as IPointCollection;
                for (int j = 0; j < pPColl.PointCount; j++)
                {
                    IPoint p1 = pPColl.get_Point(j);
                    IProximityOperator pProx = p1 as IProximityOperator;
                    try
                    {
                        if (pProx.ReturnDistance(jzdGeometry) <= 0.01)
                            jzdFeatures.Add(jzdFeature);
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);

                    }


                }
            }
            return jzdFeatures;
        }

图片说明

jzdFeature.Shape
这些都是引用的com对象,它们本身有问题,缺少,或者架构和你的主程序不兼容