PB9.0实现自动配置ODBC数据源
目录
1 RegistrySet函数说明
2 程序代码
正文
摘要摘 要 利用PB函数RegistrySet实现自动配置ODBC数据源在WIN98/WINXP环境下利用PB9.0编译运行通过
关键字 PB ODBC配置数据源
本人在开发“通用考试系统”软件时通过大量的运行测试利用PowerBuilder提供的函数RegistrySet对操作系统的注册表进行读写 以达到自动配置数据源的目的。
1 RegistrySet函数说明
修改注册表信息的函数RegistrySet的语法格式为 RegistrySet
key valuename valuetype value 。其中key为字符串数值包含用户想设置的键值的健名 valuename为字符串数值在注册表中的每一个键都有一个未命名的值和若干个命名的值 valuetype为枚举类型表示在注册表中的数据类型 value用来存放修改的值。
2 程序代码
①在主窗口中定义函数其函数结构为 access选择publicReturnType选择integer FunctionName输入reg_autolink_server。
该函数实现的功能为向注册表中某个键值下的某个值名写入相应值 函数代码如下string ls_keynamestring ls_valuenamestring ls_valuestring current_dircurrent_dir = GetCurrentDirectory( )获取当前目录if mid(current_dir len(current_dir) 1)<>"""" thencurrent_dir=current_dir+"
路径未尾保证有""""符号l s_keyname=""HKEY_CURRENT_USEof twareODBCODBC. INI ODBC DataSources"lsls_value=""Adaptive Server Anywhere 8.0""可更名""MY USESysbase SQL AnyWhere 8.0"
RegistrySet(ls_keyname ls_valuename RegString! ls_value)
Regi strySet(""HKEY_CURRENT_USEoftwareODBCODBC. INIexamsystem"" ""autostop"" RegString! ""Yes"l s_keyname=""HKEY_CURRENT_USEof twareODBCODBC. INI examsy stem"ls_valuename=""Driver""工作站驱动重要ls_value=current_dir+""dbodbc8.dll"
RegistrySet(ls_keyname ls_valuename RegString! ls_value)ls
ls
RegistrySet(ls_keyname ls_valuename RegString! ls_value)l s_valuename=""Debug"ls
RegistrySet(ls_keyname ls_valuename RegString! ls_value)ls_valuename=""DisableMultiRowFetch"
ls_value=""No"
RegistrySet(ls_keyname ls_valuename RegString! ls_value)ls_valuename=""Integrated"ls
RegistrySet(ls_keyname ls_valuename RegString! ls_value)ls_valuename=""CommLinks"
l s_value=""SharedMemory TCP IP{
RegistrySet(ls_keyname ls_valuename RegString! ls_value)l s_valuename=""EngineName"ls
RegistrySet(ls_keyname ls_valuename RegString! ls_value)l s_valuename=""PWD"
ls_value=""sql"
RegistrySet(ls_keyname ls_valuename RegString! ls_value)ls_valuename=""UID"
ls_value=""dba"
RegistrySet(ls_keyname ls_valuename RegString! ls_value)return(1)返回1表示正常结束
②为窗口对象的Open事件添加脚本
this.reg_AutoLink_Server( )首先自动配置数据源连接数据库服务器
S QLCA.DBMS = ""ODBC"
SQLCA.AutoCommit = Fal se
SQLCA.DBParm =
""ConnectString='DSN=examsystem;UID=dba;PWD=sql'connect using sqlca;open(w_login)打开用户登录窗口
编译并运行程序后可以通过控制面板的ODBC数据源管理器或注册表查看运行结果就会看到数据库已经成功的注册了。
Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...
恒创科技也有暑期的活动,其中香港服务器也有一定折扣,当然是针对新用户的,如果我们还没有注册过或者可以有办法注册到新用户的,可以买他们家的香港服务器活动价格,2M带宽香港云服务器317元。对于一般用途还是够用的。 活动链接:恒创暑期活动爆款活动均是针对新用户的。1、云服务器仅限首次购买恒创科技产品的新用户。1 核 1G 实例规格,单个账户限购 1台;其他活动机型,单个账户限购 3 台(必须在一个订单...
六一云互联六一云互联为西安六一网络科技有限公司的旗下产品。是一个正规持有IDC/ISP/CDN的国内公司,成立于2018年,主要销售海外高防高速大带宽云服务器/CDN,并以高质量.稳定性.售后相应快.支持退款等特点受很多用户的支持!近期公司也推出了很多给力的抽奖和折扣活动如:新用户免费抽奖,最大可获得500元,湖北新购六折续费八折折上折,全场八折等等最新活动:1.湖北100G高防:新购六折续费八折...