ahshegis
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数181
  • QQ
  • 铜币847枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1416回复:7

SDE程序的问题

楼主#
更多 发布于:2005-08-15 11:31
<P>我用以下程序连接SDE,在文本框中输入参数即可连接SDE,但如果在文本框中不输入,而是直接点连接按钮,会出现系统本身自带的SDE连接对话框,应该怎样才能不出现该对话框,而是当文本框为空时提示要输入参数并返回该界面进行重新输入.</P>
<P>Public Sub AddSDECoverageLayer()<BR>  Dim pWorkFact As IWorkspaceFactory2<BR>  Dim pFWorkspace As IFeatureWorkspace<BR>  Dim pFClass As IFeatureClass<BR>  Dim pFLayer As IFeatureLayer<BR>  <BR>  Dim pPropset As IPropertySet<BR>  Set pPropset = New PropertySet<BR>  With pPropset<BR>    .SetProperty "Server", Text1.Text '"202.168.1.2" 'm_SDEServerName<BR>    .SetProperty "Instance", Text2.Text '5151 'm_SDEServerInst<BR>    .SetProperty "user", Text3.Text ' sde 'm_SDEServerUserName<BR>    .SetProperty "password", Text4.Text ' sde 'm_SDEServerPass<BR>    .SetProperty "Database", Text5.Text ' yngis 'm_SDEDatabaseName<BR>    .SetProperty "version", "SDE.DEFAULT" 'm_SDEVersionName<BR>  End With<BR>  <BR>  Set pWorkFact = New SdeWorkspaceFactory<BR>  Set pFWorkspace = pWorkFact.Open(pPropset, 0)<BR>  'Set pFClass = pFWorkspace.OpenFeatureClass("SDE.hydnt_arc")<BR>  <BR>  'Set pFLayer = New FeatureLayer<BR>  'Set pFLayer.FeatureClass = pFClass<BR>  'pFLayer.Name = pFClass.AliasName<BR>  <BR>  'MapControl1.AddLayer pFLayer<BR>  'MapControl1.Refresh<BR>  <BR>  If Not pFWorkspace Is Nothing Then<BR>  MsgBox "连接SDE成功"<BR>  Else<BR>  MsgBox "请重新连接"<BR>  End If<BR>  <BR>End Sub</P><img src="images/post/smile/dvbbs/em12.gif" />
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
1楼#
发布于:2005-08-15 11:45
<P>自己在程序里判断了</P>
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
cftao2008
路人甲
路人甲
  • 注册日期2005-03-09
  • 发帖数141
  • QQ
  • 铜币568枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-08-15 13:02
但是,用默认的对话框连接属性之后,就会出错!意思是,默认对话框中所填写的只没有传递过来!如果可以利用默认的对话框的话,不是更好吗?
举报 回复(0) 喜欢(0)     评分
cftao2008
路人甲
路人甲
  • 注册日期2005-03-09
  • 发帖数141
  • QQ
  • 铜币568枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2005-08-15 17:30
<P>我尝试了一下,如果在IPropertySet的设置中的参数没有完全设定,那个Open函数会自动调用那个对话框。但是如果完全不设置,就会出现连接错误,只要有一个参数设置了默认值,就可以连接成功!但是,那个对话框好像是不能控制的!</P>
<P><BR> </P>
举报 回复(0) 喜欢(0)     评分
ahshegis
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数181
  • QQ
  • 铜币847枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2005-08-16 08:28
<P>实际需要是要用自己的文本框,应该怎么改?</P><img src="images/post/smile/dvbbs/em12.gif" />
举报 回复(0) 喜欢(0)     评分
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
5楼#
发布于:2005-08-16 09:45
<P>你可以根据SDE的错误列表,获取你的错误代码,根据错误代码在程序里做出响应</P>
<P>ok?</P>
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
ahshegis
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数181
  • QQ
  • 铜币847枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2005-08-16 15:10
<P>老大,能不能给点详细提示?</P>
举报 回复(0) 喜欢(0)     评分
ahshegis
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数181
  • QQ
  • 铜币847枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2005-08-17 10:59
<P>在默认框中输入参数不能正确连接,会出现错误提示?</P>
举报 回复(0) 喜欢(0)     评分
游客

返回顶部