ArcEngine访问ArcGISServer服务【一】

原创 2013年12月05日 11:50:06

GISClient类库允许开发者使用Web服务,这些Web服务可以由ArcIMSArcGIS Server提供。GISClient类库中包含用于连接GIS服务器以使用Web服务的对象。该类库支持ArcIMS的图像和要素服务。GISClient类库提供以无态方式直接或通过Web服务目录操作ArcGIS Server对象的通用编程模型。在ArcGIS Server上运行的ArcObjects组件不能通过GISClient接口来访问。要直接获得访问在服务器上运行的ArcObjects,开发人员应使用Server类库中的功能。

 

代码实现部分:

 

Ø  打开连接

 

private void OpenConn(bool bLAN,string sval)

 

        {

 

            try

 

            {

 

               IAGSServerConnectionFactory pConnF = new AGSServerConnectionFactory();

 

               IPropertySet pProSet = new PropertySet();

 

               if(bLAN)

 

                   pProSet.SetProperty(“machine”, sval);

 

               else

 

                   pProSet.SetProperty(“url”, sval);

 

               clsPublic.pConn = pConnF.Open(pProSet, 0);

 

                if(clsPublic.pConn != null)

 

                {

 

                   MessageBox.Show(“连接成功“, “提示“, MessageBoxButtons.OK, MessageBoxIcon.Information);

 

                }

 

               else

 

                {

 

                   MessageBox.Show(“连接失败“,”提示“, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

 

                }

 

            }

 

            catch {}

 

        }

 

 

Ø  加载地图

 

publicvoid AddMapService(AxMapControl pMapCtrl, string sServiceName, IAGSServerConnection pConn)

 

       {

 

           pConn.ServerObjectNames.Reset();

 

           IAGSEnumServerObjectName pEnumServerObjectNames =pConn.ServerObjectNames;

 

           pEnumServerObjectNames.Reset();

 

           IAGSServerObjectName pServerObjectName =pEnumServerObjectNames.Next();

 

           IAGSServerObjectName sServerObjectName = null;

 

           while (pServerObjectName != null)

 

           {

 

                if(pServerObjectName.Name == sServiceName)

 

                {

 

                    sServerObjectName =pServerObjectName;

 

                    break;

 

                }

 

                pServerObjectName =pEnumServerObjectNames.Next();

 

           }

 

           if (sServerObjectName == null)

 

           {

 

                MessageBox.Show(没有找到对应的MapService, 提示, MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

 

                return;

 

           }

 

           IName pName = sServerObjectName asIName;

 

           IMapServer pMapServer = pName.Open() asIMapServer;

 

           IMapServerLayer pMSLyr = newMapServerLayerClass();

 

           pMSLyr.ServerConnect(sServerObjectName, pMapServer.DefaultMapName);

 

           ILayer plyr = pMSLyr asILayer;

 

           pMapCtrl.ClearLayers();

 

           pMapCtrl.AddLayer(plyr);

 

           pMapCtrl.Extent = pMapCtrl.FullExtent;

 

       }

Arcgis10.1中GP工具的发布、调用与调试

一.发布之前的操作 1.Model模型建立前需要用到验证模型的数据的坐标转换 这里的数据是指用于带入模型运行数据的处理。我在js中加载的图层数据的平面坐标系是西安80,所以这里需要把模型建立的数据的坐...
  • tianhongguo
  • tianhongguo
  • 2017年07月29日 09:41
  • 552

Arcengine 实现要素选取的方法(转载)

选择一个要素或者一个要素集(FeatureSelection)的方法很多,如IMap::SelectByShape、ILayer::search、IFeatureSection::SelectFeat...
  • chanyinhelv
  • chanyinhelv
  • 2013年01月05日 16:20
  • 10442

C#,Cshape, ArcEngine的命令调用的形式区别

1、工具号 如放大,需要在mousedown执行,设置CurrentTool            ICommand pCommand = new ESRI.ArcGIS.Controls.Contr...
  • yanleigis
  • yanleigis
  • 2008年03月31日 17:13
  • 2343

ArcEngine调用GP工具之Erase总是报…

原因:权限不够
  • liupeng_qwert
  • liupeng_qwert
  • 2015年05月07日 10:02
  • 460

Arcengine开发调用GP工具(IGeoProcessor接口或Geoprocessor类)

GP工具可以直接调用ArcgisMap中工具栏的某些功能。 1.首先需要有许可证license。 2.添加相关引用using ESRI.ArcGIS.Geoprocessor; using E...
  • m0_37862405
  • m0_37862405
  • 2017年09月16日 18:03
  • 265

用C#进行ArcGIS 10 Engine 开发 - 安装配置和入门程序说明

一 安装  1   其安装包解压后如下图;     文件比较大,有3G多,无法上传;如果网上下不到,可联系鄙人q号513979805,发一份给你;不过上图的授权文件我记不清哪个能用了,不行的话需要...
  • bcbobo21cn
  • bcbobo21cn
  • 2015年04月13日 19:29
  • 3315

c# 调用ArcEngine的GP工具

IAoInitialize m_AoInitialize = new AoInitializeClass(); esriLicenseStatuslicenseStatus...
  • chanyinhelv
  • chanyinhelv
  • 2013年02月20日 17:44
  • 6022

在Arcmap中加载互联网地图资源的4种方法

http://blog.3snews.net/space.php?uid=6955280&do=blog&id=67981 在Arcmap中加载互联网地图资源的4种方法 前一段时间想在Arcma...
  • zzh_my
  • zzh_my
  • 2015年07月21日 14:26
  • 2400

c# 调用ArcEngine的GP工具

IAoInitialize m_AoInitialize = new AoInitializeClass(); esriLicenseStatuslicenseStatus...
  • chanyinhelv
  • chanyinhelv
  • 2013年02月20日 17:44
  • 6022

ArcGIS Engine断开其他ArcSDE用户连接的解决方案

最近有很多用户咨询
  • linghe301
  • linghe301
  • 2014年09月01日 14:16
  • 3335
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ArcEngine访问ArcGISServer服务【一】
举报原因:
原因补充:

(最多只允许输入30个字)