以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94218)

--  作者:zswushi
--  发布时间:2016/12/19 10:44:00
--  [求助]
老师们好!

    我想在 项目文件夹 做个类似 INI 配置文件,然后在 BeforeConnectOuterDataSource 事件中,读取它的参数,来连接外部数据源 ,配置文件 类似  

[ConDB_]
SERVER_NAME=a00
DB_NAME=wushi
USERID=sa
PW=1213456

这样 , server _ name  对应于 data source ;  db_name 对应于 :Initial Catalog  ;  userid 对应于 User ID; PW对应 password ;

若有密码是:链接字符串开始为:Provider=SQLOLEDB;Password = “****** ”,Persist Security Info=True;;

若没有密码时:  链接字符串开始为:Provider=SQLOLEDB.1,Persist Security Info=false;

打开项目文件时 ,若 连接成功,直接进入登录界面,若登录不成功,提示 ,“创建外部连接失败........”,点确定后 ,能弹出 设置数据源链接的窗口 ,待输入正确的服务器名,数据库名时 ,能连接数据源进入系统,否则,还是弹出设置界面的对话框


该怎样 写这些代码?谢谢!我已浏览过 许多  关于 这类文件的 帮助文件,但总是无从下手,谢谢高手赐教!!!

  
 




--  作者:wyz20130512
--  发布时间:2016/12/19 11:21:00
--  
http://www.foxtable.com/webhelp/scr/1944.htm
--  作者:zswushi
--  发布时间:2016/12/19 11:47:00
--  
大概知道了思路,但还是没有相关的例子代码呀,若有类似的例子代码更好!!

多谢赐教  !!!


--  作者:有点色
--  发布时间:2016/12/19 12:20:00
--  

如果需要读取ini的内容,可以参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=40490&skin=0

 


--  作者:9602084
--  发布时间:2016/12/19 16:15:00
--  
1.生成加密的配置文件

Dim iport As String = e.Form.Controls("TxtIP").text & ":" & e.Form.Controls("Txtport").text & ":" & e.Form.Controls("Txtinterval").text & ":" & e.Form.Controls("Txttimeout").text

Dim contxt1 As String = e.Form.Controls("TextBox2").text

Dim contxt2 As String = e.Form.Controls("TextBox1").text

FileSys.WriteAllText( projectpath & "/config/config" & Format(Date.now,"yyyyMMdd") & ".txt",EncryptText(iport & vbcrlf & contxt1 & vbcrlf & contxt2,"****","****"), False)

2.读取配置文件

BeforeConnectOuterDataSource

 

\'\'\'

If e.name = "rsgl" Then

    Dim CnString As String

    If filesys.FileExists(ApplicationPath & "config.txt")

        Dim contxt() As String = DecryptText(filesys.ReadAllText(ApplicationPath & "config.txt"),"*****","*****").split(vbcrlf)

        If contxt.Length > 1 Then

            CnString = contxt(1)

        Else

            MessageBox.show("系统配置文件错误,请联系管理员。","警告",MessageBoxButtons.OK,MessageBoxIcon.Warning)

            Syscmd.Project.Exit()

            Return

        End If

        If Connections.TryConnect(CnString) = True Then

            e.ConnectionString = CnString

        Else

            messagebox.show("无法连接到数据库,请联系管理员。","警告",MessageBoxButtons.OK,MessageBoxIcon.Warning)

            Syscmd.Project.Exit()

            Return

        End If

    Else

        messagebox.show("没有找到系统配置文件,无法连接到数据,请联系管理员。","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

        Syscmd.Project.Exit()

        Return

    End If

End If


--  作者:zswushi
--  发布时间:2016/12/19 18:50:00
--  
我消化下,谢谢 !那个加密的配置文件,我可以自己不加密呀,就不需要之前的那一段吗??


--  作者:有点蓝
--  发布时间:2016/12/19 20:15:00
--  
那就直接写文本

FileSys.WriteAllText( projectpath & "/config/config" & Format(Date.now,"yyyyMMdd") & ".txt",iport, False)

--  作者:zswushi
--  发布时间:2016/12/20 10:04:00
--  
我的总体思路是 :1、在项目文件夹 自己用记事本文件 (改变类型)  做个config. ini 的 配置文件(不用加密,解密的功能);例如:
                                      [ConDB_]
                                     服务器名 =A00
                                    数据库名=wushi
                                    登录用户=sa
                                    登录密码=123456
                                    连接时间 =   20                  \'连接时间限定,假定用 20 秒 来做单位
                                                                    
                                     2、在 BeforeConnectOuterDataSource 事件中 ,读取 config 文件的值;然后填写到  字符串:  Provider=SQLOLEDB;Password=87686269;Persist Security Info=True;User ID=sa;Initial Catalog=X0;Data Source=a00  中, 让该字符串的值,跟 config 的值一样;

                          3、测试更改后的 字符串是否能连接通,若能联通,就正常进入系统;
                           若不能联通,就提示出错(最好限定“time ”时间,比如 20秒),弹出 “config”对话框,修改参数后,若参数值 正确 方可进入系统,否则一直提示,参数 设置错误;除非是 关掉 项目;
                          
                          4、恳请老师们,最好能把完整代码 写下来,我自己再去变通,本人不胜感激!!

[此贴子已经被作者于2016/12/20 11:16:11编辑过]

--  作者:有点色
--  发布时间:2016/12/20 10:07:00
--  

 自食其力

 

http://www.foxtable.com/webhelp/scr/0682.htm

 


--  作者:zswushi
--  发布时间:2016/12/20 10:10:00
--  
data  source 可以改成中文 :服务器名;

 Initial Catalog   可以改成  数据库名:

 USER ID              可以改成: 登录账户;

 Password         可以改成:  登录密码

 time  :         可以改成    连接时间           
  
不胜感激!!!