Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:幼狐 帖子:185 积分:1729 威望:0 精华:0 注册:2016/5/30 16:23:00
[求助]  发帖心情 Post By: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
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2016/12/19 11:21:00 [只看该作者]


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


加好友 发短信
等级:幼狐 帖子:185 积分:1729 威望:0 精华:0 注册:2016/5/30 16:23:00
  发帖心情 Post By:2016/12/19 11:47:00 [只看该作者]

大概知道了思路,但还是没有相关的例子代码呀,若有类似的例子代码更好!!

多谢赐教  !!!


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/19 12:20:00 [只看该作者]

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

 

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

 


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


加好友 发短信
等级:小狐 帖子:341 积分:3406 威望:0 精华:0 注册:2013/5/17 10:55:00
  发帖心情 Post By: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
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:185 积分:1729 威望:0 精华:0 注册:2016/5/30 16:23:00
  发帖心情 Post By:2016/12/19 18:50:00 [只看该作者]

我消化下,谢谢 !那个加密的配置文件,我可以自己不加密呀,就不需要之前的那一段吗??


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/19 20:15:00 [只看该作者]

那就直接写文本

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

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


加好友 发短信
等级:幼狐 帖子:185 积分:1729 威望:0 精华:0 注册:2016/5/30 16:23:00
  发帖心情 Post By: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编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/20 10:07:00 [只看该作者]


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


加好友 发短信
等级:幼狐 帖子:185 积分:1729 威望:0 精华:0 注册:2016/5/30 16:23:00
  发帖心情 Post By:2016/12/20 10:10:00 [只看该作者]

data  source 可以改成中文 :服务器名;

 Initial Catalog   可以改成  数据库名:

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

 Password         可以改成:  登录密码

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




 回到顶部
总数 22 1 2 3 下一页