以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问,syscmd.project.exit(false)没办法跳离系统??  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=50144)

--  作者:tennis
--  发布时间:2014/4/30 10:45:00
--  请问,syscmd.project.exit(false)没办法跳离系统??

BeforeConnectOuterDataSource:


Dim s As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Users\\Administrator\\Documents\\Foxtable项目\\管理项目5\\Catch\\用户.mdb;Persist Security Info=False"
If Connections.TryConnect(s) = False Then
    MessageBox.Show("数据源无法连通!")
    Syscmd.Project.Exit(False)
End If

Syscmd.Project.Exit(False) 为何没办法离开 ??

--  作者:Bin
--  发布时间:2014/4/30 10:51:00
--  
测试没有问题啊. 该事件是可以执行退出代码的.上个例子我看看.
--  作者:bahamute
--  发布时间:2014/4/30 11:27:00
--  
试了一下,好像确实没有完全退出,提示“数据源无法连通!”之后,还会弹出:创建数据库链接失败!说明仍然执行了后续连接数据库代码!
--  作者:bahamute
--  发布时间:2014/4/30 11:28:00
--  
1、
难不成要加个return?

2、
另外还会出现运行错误:
.NET Framework 版本:2.0.50727.5477
Foxtable 版本:2014.4.21.1
错误所在事件:项目,BeforeConnectOuterDataSource
详细错误信息:
未将对象引用设置到对象的实例。


[此贴子已经被作者于2014-4-30 11:34:58编辑过]

--  作者:有点甜
--  发布时间:2014/4/30 11:37:00
--  
以下是引用bahamute在2014-4-30 11:27:00的发言:
试了一下,好像确实没有完全退出,提示“数据源无法连通!”之后,还会弹出:创建数据库链接失败!说明仍然执行了后续连接数据库代码!

 

试一下直接关闭。

 

BaseMainForm.Close


--  作者:狐狸爸爸
--  发布时间:2014/4/30 11:38:00
--  

不可以在这个事件BeforeConnectOuterDataSource退出系统

只可以在BeforeOpenProject事件和AfterOpenproject事件退出系统。


--  作者:bahamute
--  发布时间:2014/4/30 11:44:00
--  
那该如何实现一楼的目的?正好有此需求,借楼主帖子一问。
--  作者:Bin
--  发布时间:2014/4/30 11:49:00
--  
刚才测试有误,我是在没关闭项目的情况下测试的. 直接在狐表里开启新项目.


你可以在BeforeOpenProject事件使用你1楼的代码进行判断退出

--  作者:bahamute
--  发布时间:2014/4/30 12:03:00
--  
OK!非常感谢!
 
一楼代码修改如下:

BeforeOpenProject事件:

Dim s As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Users\\Administrator\\Documents\\Foxtable项目\\管理项目5\\Catch\\用户.mdb;Persist Security Info=False"

If Connections.TryConnect(s) = False Then
     e.Cancel = True
   e.HideSplashForm = True
    MessageBox.Show("数据源无法连通!")
End If

--  作者:tennis
--  发布时间:2014/4/30 15:46:00
--  
3Q ALL:


請帮忙看这一段:放于BeforeOpenproject 会出错误,我原先放于BeforeConnectOuterDataSource

Dim ipfile As String = projectpath & "catch\\ip.txt"

If filesys.fileExists(ipfile) =True Then
    Dim dbfile As String = filesys.readalltext(ipfile)
    If filesys.fileExists(dbfile)=True Then
        If e.name = "database" Then
            e.c & dbfile &  ";Persist Security Info=False"
        End If
    Else
        If e.name = "database" Then
            Dim dlg As new openfiledialog
            dlg.filter = "access文件|*.mdb"
            If dlg.showdialog = dialogresult.ok Then
                e.c & dlg.filename &  ";Persist Security Info=False"
                filesys.writealltext(ipfile,dlg.filename,False)
            End If
        End If
    End If
Else
    If e.name = "database" Then
        Dim dlg As new openfiledialog
        dlg.filter = "access文件|*.mdb"
        If dlg.showdialog = dialogresult.ok Then
            e.c & dlg.filename &  ";Persist Security Info=False"
            filesys.writealltext(ipfile,dlg.filename,False)
        End If
    End If
End If