Foxtable(狐表)用户栏目专家坐堂 → BeforeConnectOuterDataSource中的全局变量不能执行吗


  共有4608人关注过本帖树形打印复制链接

主题:BeforeConnectOuterDataSource中的全局变量不能执行吗

帅哥哟,离线,有人找我吗?
sjzsdu
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:2455 威望:0 精华:0 注册:2014/7/30 18:03:00
BeforeConnectOuterDataSource中的全局变量不能执行吗  发帖心情 Post By:2015/12/29 15:49:00 [只看该作者]

全局代码中设置了:
'判断是否连接数据库成功
Public isconnected As Boolean

BeforeConnectOuterDataSource事件中写了:这个代码

If e.Name = "ERPdatabase" Then
    Dim pathP As String = "System/DatabasePath"
    Dim xmlDoc As New System.XML.XmlDocument
    xmlDoc.Load(config)
    Dim xmlNd As System.XML.XmlNode = xmlDoc.SelectSingleNode(pathP)
    Dim databasePath As String = xmlNd.InnerText
  MessageBox.show(databasePath)  
    Dim pathN As String = "System/DatabaseName"
    Dim xmlNd1 As System.XML.XmlNode = xmlDoc.SelectSingleNode(pathN)
    Dim databaseName As String = xmlNd1.InnerText
      MessageBox.show(databaseName )  
    Dim pathPS As String = "System/DatabasePassword"
    Dim xmlNd2 As System.XML.XmlNode = xmlDoc.SelectSingleNode(pathPS)
    Dim databasePassword As String = xmlNd2.InnerText
 MessageBox.show(databasePassword )     
    Dim s As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & databasePath & "\" & databaseName & ";Persist Security Info=False;Jet OLEDB:Database Password=" & databasePassword
     MessageBox.show(s)
MessageBox.show(Connections.TryConnect(s))
If Connections.TryConnect(s) = False Then
        MessageBox.Show("数据源无法连通!")
MessageBox.show(1)
        e.HideSplashForm = True
MessageBox.show(2)
        isconnected= False
MessageBox.show(3)
    Else
MessageBox.show(4)
        isconnected= True
MessageBox.show(5)
        e.ConnectionString = s

    End If
MessageBox.show(e.ConnectionString)  
MessageBox.show(Isconnected) 

没发布项目的时候,一切正常。发布后在其他计算机上运行的时候,执行到  【isconnected= True】,就莫名其妙的退出了,没有提示错误
(【MessageBox.show(5)】这一步没有执行,MessageBox.show(4)】这一步执行了)就卡在isconnected上面


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 16:03:00 [只看该作者]

我单独做一个项目测试没有问题。

 

是不是和你的其它代码有冲突?你弄个空项目测试看看。


 回到顶部
帅哥哟,离线,有人找我吗?
sjzsdu
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:2455 威望:0 精华:0 注册:2014/7/30 18:03:00
  发帖心情 Post By:2015/12/29 16:11:00 [只看该作者]

数据库密码故意设置错误后, MessageBox.Show("数据源无法连通!")
MessageBox.show(1)
        e.HideSplashForm = True
MessageBox.show(2) 这几步都能执行,
下面几步也没执行下去,也没有错误提示跳出来
 isconnected= False
MessageBox.show(3)

在本计算机,发布后的项目和发布前的项目都能够执行,没有错误。
发布后的项目搬到其他计算机上运行就出来这个问题。这会是什么情况呢,想不明白啊,纠结了一天了,你发布后有没有搬到其他计算机上试过

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 16:14:00 [只看该作者]

那如果你不在那里赋值,重新发布,在测试,是否正常弹出?

 回到顶部
帅哥哟,离线,有人找我吗?
sjzsdu
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:2455 威望:0 精华:0 注册:2014/7/30 18:03:00
  发帖心情 Post By:2015/12/29 16:49:00 [只看该作者]

把isconnected那两步拿掉,可以执行下去

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 16:51:00 [只看该作者]

你运行 可执行文件名.exe 那个exe

 

win7系统的话,右键,设置使用管理员身份运行一下。

 

--------------如果还不行,弄个空项目写上代码测试。


 回到顶部
帅哥哟,离线,有人找我吗?
sjzsdu
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:2455 威望:0 精华:0 注册:2014/7/30 18:03:00
  发帖心情 Post By:2015/12/29 17:17:00 [只看该作者]

全局变量和Vars变量是不是只能在afteropenproject以后才能使用啊,我用vars变量代替了全局变量isconnected
BeforeConnectOuterDataSource事件可以顺利执行了,为Vars(“isconnected”)为true
但是在afteropenproject事件中引用 Vars(“isconnected”)的时候,发现这个变量值居然是Null。


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/29 17:25:00 [只看该作者]

vars不能在你的事件用。

 

或者你用saveConfigValue代替一下吧。

 

http://www.foxtable.com/help/topics/1544.htm

 

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
liufucan
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:649 积分:5730 威望:0 精华:0 注册:2017/4/7 12:15:00
  发帖心情 Post By:2020/4/29 16:17:00 [只看该作者]

我也碰到这个问题了,不管是全局变量还是saveConfigValue在这个事件赋值,都是空值,这算bug吗?

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110595 积分:562871 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/29 16:31:00 [只看该作者]

是不能用的,这个事件全局变量还没有初始化

 回到顶部
总数 12 1 2 下一页