waterblue
路人甲
路人甲
  • 注册日期2004-09-02
  • 发帖数72
  • QQ
  • 铜币387枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:3008回复:12

AO怎样由featureclass得到数据源的位置

楼主#
更多 发布于:2005-01-31 16:50
<P>如果连的是数据库的话,我用以下代码,运行通过,结果是正确的:(可直接看最后红色的代码)</P>
<P>    Dim pWorkspaceFactory As IWorkspaceFactory
    Set pWorkspaceFactory = New AccessWorkspaceFactory
    Dim pPropertySet As IPropertySet
    Set pPropertySet = New PropertySet
    pPropertySet.SetProperty "DATABASE", F:\arcgis\DeveloperKit\samples\data\usa\usa.mdb"
    Dim pWorkspace As IWorkspace
    Set pWorkspace = pWorkspaceFactory.Open(pPropertySet, Me.hWnd)
    Dim pEnumDataSet  As IEnumDataset
    
'    Set pEnumDataSet = pWorkspace.Datasets(esriDTFeatureClass)
    Set pEnumDataSet = pWorkspace.Datasets(esriDTFeatureDataset)
    Dim pFeatureDataset As IFeatureDataset
    Set pFeatureDataset = pEnumDataSet.Next
        
    Dim pfeatclass As IFeatureClass
    Set pfeatclass = pFeatureDataset.Subsets.Next</P>
<P>
    ''QI to IDataset to prove you have a featureclass...
    Dim pdataset As IDataset
    Set pdataset = pfeatclass
    Dim player As IFeatureLayer
    Set player = New FeatureLayer             </P>
<P>    Set player.FeatureClass = pfeatclass            
    MapControl1.AddLayer player    
    
    Dim aa As String
'    Dim pPropertySet As IPropertySet
    Set pPropertySet = pdataset.Workspace.ConnectionProperties
    <FONT color=#ff0000>aa = pPropertySet.GetProperty("DATABASE")</FONT>
      
     Text1.Text = aa ; "::" ; pdataset.Name</P>
<P>如果我打开的是一个shp文件,怎么样得到呢?</P>
<P>直接一点就是</P>
<P>    Set pPropertySet = pdataset.Workspace.ConnectionProperties
    <FONT color=#ff0000>aa = pPropertySet.GetProperty("???")</FONT></P>
<P><FONT color=#ff0000>“???”这个参数是什么?</FONT></P>
<P><FONT color=#ff0000></FONT></P>

[此贴子已经被作者于2005-1-31 16:52:32编辑过]
喜欢0 评分0
http://www.geostar.com.cn(吉奥 公司) http://www.waterblue.com.cn(水之灵,蓝之静 个人)
fnwgz
伴读书童
伴读书童
  • 注册日期2004-09-16
  • 发帖数120
  • QQ
  • 铜币638枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2005-04-02 17:09
<P>谢谢10楼指点!!!!!</P><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em05.gif" /><img src="images/post/smile/dvbbs/em08.gif" />
我也许很笨,但是我一直再努力,没有放弃!
举报 回复(0) 喜欢(0)     评分
bluewood_cn
路人甲
路人甲
  • 注册日期2004-04-19
  • 发帖数118
  • QQ
  • 铜币551枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-03-09 16:23
<P>我的想法是</P><P>通过 IFeatureClass -》得到IFeatureClassName--》得到文件名</P><P>然后通过IFeatureClassName 得到 IWorkSpaceName</P><P>通过IWorkSpaceName 得到目录, </P><P>这样就可以了。 不知道对不多。:)</P>
举报 回复(0) 喜欢(0)     评分
waterblue
路人甲
路人甲
  • 注册日期2004-09-02
  • 发帖数72
  • QQ
  • 铜币387枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2005-02-28 11:12
谢谢了!
http://www.geostar.com.cn(吉奥 公司) http://www.waterblue.com.cn(水之灵,蓝之静 个人)
举报 回复(0) 喜欢(0)     评分
gsl1982
路人甲
路人甲
  • 注册日期2004-05-08
  • 发帖数135
  • QQ
  • 铜币543枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2005-02-18 17:46
<P>想得到楼主的答案可以这样写代码:</P><P>假设pFtCls是需要得到数据源路径的IFeatureClass</P><P>Dim pDataset as IDataset</P><P>Dim strPath as String</P><P>set pDataset = pFtCls</P><P>strPath = pDataset .Workspace .PathName </P>
举报 回复(0) 喜欢(0)     评分
xxwwdd
路人甲
路人甲
  • 注册日期2003-08-19
  • 发帖数88
  • QQ
  • 铜币230枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2005-02-02 20:54
<P>打开的是一个shp文件也是使用  <FONT color=#ff0000>aa = pPropertySet.GetProperty("DATABASE")</FONT>
</P>
举报 回复(0) 喜欢(0)     评分
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15947
  • QQ554730525
  • 铜币25339枚
  • 威望15364点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
6楼#
发布于:2005-02-02 15:43
shp和目录没关系的,所以不能这样来获取,文件路径很容易获取啊,和其他文件没区别的
举报 回复(0) 喜欢(0)     评分
waterblue
路人甲
路人甲
  • 注册日期2004-09-02
  • 发帖数72
  • QQ
  • 铜币387枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2005-02-02 12:21
<P>谢谢了!</P><P>我是想在打开一个shp文件后,由featureclass得到该文件的位置,用文本框显示出来,看来只能在打开文件的时候,动点脑筋了。</P>
http://www.geostar.com.cn(吉奥 公司) http://www.waterblue.com.cn(水之灵,蓝之静 个人)
举报 回复(0) 喜欢(0)     评分
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15947
  • QQ554730525
  • 铜币25339枚
  • 威望15364点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
8楼#
发布于:2005-02-01 17:52
<P>偶也不知道楼猪在做什么,:)</P><img src="images/post/smile/dvbbs/em02.gif" />
举报 回复(0) 喜欢(0)     评分
zhousky
论坛版主
论坛版主
  • 注册日期2003-08-01
  • 发帖数281
  • QQ
  • 铜币1027枚
  • 威望3点
  • 贡献值0点
  • 银元0个
9楼#
发布于:2005-02-01 17:14
打开SHP,无法用propertySet
不要看我噢
举报 回复(0) 喜欢(0)     评分
上一页
游客

返回顶部