星辰羽
路人甲
路人甲
  • 注册日期2011-11-05
  • 发帖数2
  • QQ
  • 铜币109枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1943回复:3

[求助]在GDB中存入Raster字段,怎么用VBA取出?[已解决]

楼主#
更多 发布于:2011-11-05 18:17
我要仿制Identify做一个山寨Identify(老师作业来的) <br/>

然后在取出图片字段时候遇到了问题.<br/>

用IFeature.Value()来取图片的时候,不知道该给这个Variant用什么接口来赋值.<br/>

问了老师,他说用ADO直接进库去读,我发现GDB把栅格存到blk表里面,都打散成好几条记录了,我用VBA不太熟练,拼接二进制的话.说实话没这个本事.<br/>

然后我继续想ArcSDE的办法.<br/>

因为我是安装的SqlServer Express.<br/>

SDE用的是ArcSDE for sqlserver Personal<br/>

然后按照VBA手册里面的代码,用WorkspaceFactory来取得一个Workspace,可是不管怎么试,都是提示我"Entry for sde instance not found in services file"...去搜索,得到的都是那个Oracle的解决办法...到处转载,都一样..然后,磨了一下午没有解决.来求助各位大虾们,求指教~<br/>

<br/>
Email xcssss@sina.com<br/>
Q  307828058
<br/>
<br/>
<font size="8" color="red">解决:我没有用SDE去连,我是用的IFeaute.Value 只要把Variant赋给IRasterValue就OK了~~~!!!!</font>

[此贴子已经被作者于2011-11-08 12:29:48编辑过]
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
1楼#
发布于:2011-11-07 08:00
<p>Entry for sde instance not found in services file的解决方法</p><p>修改C:\Windows\System32\drivers\etc目录下的services文件</p><p>增加一行:  esri_sde        5151/tcp  #arcsde</p><p><strong>输入完后,记得回车</strong><br/></p>
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
星辰羽
路人甲
路人甲
  • 注册日期2011-11-05
  • 发帖数2
  • QQ
  • 铜币109枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2011-11-07 10:43
<p><font face="Verdana">Set pPropertySet = New PropertySet<br/>    With pPropertySet<br/>        .SetProperty "server", "SSLAPTOP"<br/>        .SetProperty "instance", "SQLEXPRESS"<br/>        .SetProperty "database", "VBA"<br/>        .SetProperty "user", "sa"<br/>        .SetProperty "password", "songshuang"<br/>        .SetProperty "version", "sde.DEFAULT"<br/>    End With</font></p>
<p> </p>
<p>我的连接属性是这样写的</p>
<p> </p>
<p>我的计算机名是SSLAPTOP 然后 SqlServer的实例名是 SQLEXPRESS sa 和密码我登陆过 可以用的 然后库是VBA</p>
<p>这样去链接,按照你所说的改了services文件 依旧提示Entry not found~~~</p>
举报 回复(0) 喜欢(0)     评分
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
3楼#
发布于:2011-11-07 11:16
<p>前面的应该是实例名,修改成这样试试?</p><p>SQLEXPRESS    5151/tcp  #arcsde</p><p>修改完后,机器重启一下</p>
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
游客

返回顶部