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数据源管理器或注册表查看运行结果就会看到数据库已经成功的注册了。
轻云互联怎么样?轻云互联,广州轻云网络科技有限公司旗下品牌,2018年5月成立以来,轻云互联以性价比的价格一直为提供个人,中大小型企业/团队云上解决方案。本次轻云互联送上的是美国圣何塞cn2 vps(免费50G集群防御)及香港沙田cn2 vps(免费10G集群防御)促销活动,促销产品均为cn2直连中国大陆线路、采用kvm虚拟技术架构及静态内存。目前,轻云互联推出美国硅谷、圣何塞CN2GIA云服务器...
前天,还有在"Hostodo商家提供两款大流量美国VPS主机 可选拉斯维加斯和迈阿密"文章中提到有提供两款流量较大的套餐,这里今天看到有发布四款庆祝独立日的七月份的活动,最低年付VPS主机13.99美元,如果有需要年付便宜VPS主机的可以选择商家。目前,Hostodo机房可选拉斯维加斯和迈阿密两个数据中心,且都是基于KVM虚拟+NVMe整列,年付送DirectAdmin授权,需要发工单申请。(如何...
atcloud主要提供常规cloud(VPS)和storage(大硬盘存储)系列VPS,其数据中心分布在美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国、新加坡,所有VPS默认提供480Gbps的超高DDoS防御+不限流量,杜绝DDoS攻击骚扰,比较适合海外建站等相关业务。ATCLOUD.NET是一家成立于2020年的海外主机商,主要提供KVM架构的VPS产品、LXC容器化产品、权威DNS智能解...