一、问题描述:
当使用如下连接:
IPropertySet pPropertySet;
pPropertySet = new PropertySetClass();
pPropertySet.SetProperty("Server", "服务器名");
pPropertySet.SetProperties("Database","sde");
pPropertySet.SetProperty("Instance", " esri_sde");
pPropertySet.SetProperty("user", "sde");
pPropertySet.SetProperty("password", "sde");
pPropertySet.SetProperty("version", "sde.DEFAULT");
连接服务器sde,sde提示如下错误:
entry for sde instance not found in services file;
二、解决办法
解决办法1:
在客户机“C:\WINDOWS\SYSTEM32\DRIVERS\ETC”文件夹下services文件添加:
esri_sde 5151/tcp #ArcSDE for Oracle
在客户机“C:\WINDOWS\SYSTEM32\DRIVERS\ETC”文件夹下host文件添加:
IP地址 服务器名
解决办法2:
将实例属性设置为:
pPropertySet.SetProperty("Instance", "port:5151");
一般修改esri_sde 5151/tcp #ArcSDE for Oracle即可链接成功
错误详情:
用ArcCatalog连接ArcSDE时,提示错误信息“Failed to connect to the specified server。Entry for SDE instance not found in services file”
当输入用户名,数据库名之后,测试连接不能通过,单击sde.DEFAULT的change,弹出的消息为:
Failed to connect to the specified server
Entry for sde instance not found in services file
原因及解决:
输入服务名那里使用了esri_sde,找不到该服务名和端口的映射导致错误。
1)在客户机“c:\windows\system32\drivers\etc”文件夹下services文件添加:
esri_sde 5151/tcp #arcsde for oracle
2)在客户机“c:\windows\system32\drivers\etc”文件夹下host文件添加:
ip地址 服务器名
或者,不使用服务名,直接使用5151端口号